I want to develop image processing code, and I wonder if there is a big difference between their development in C ++ and C #?
Is there any detailed document that explains what is good to implement in C # and what is good to implement in C ++?
As far as I know, since C # code was compiled into machine code before running (using the .NET CLR JIT compiler), there should not be much difference between the two languages, if during code development you watch how a specific language suggests implementing design patterns (for example , the use of a large number of new ones and the use of fixed arrays).
Edit: There are some other parameters that I did not think at first, but I look now when I read some answers: 1- These are high-level projects, which means that I can ask the user to have a very good computer (lots of memory and multi-core processors) 2- I can assume that the user has a very good graphics card, so I can use my GPU for processing. 3- I think WPF is good for this development (I'm right!). Is there a similar library for C ++? I worked with MFC, but I'm not sure that MFC is as good as WPF when working on projects that should display images, and the graphical interface is very important.
.NET IL , ++. ++ , :
:
. , ++. # , Paint.NET. #, , ++/CIL , P/Invoke.
-, ++ # , , , , api ( ). - , #, ++, Monitor.Wait( , ++, ++), , ( ), ++ # ( , , ). , ++, ++, ++ SIMD, #. , ++ #, , 10% , , , , , # , , , ( , SIMD, Visual ++, ).
, .NET JIT- , , . , , JIT , , , , .
: ++ SSE, 4 , , JIT, CPU.
, : SIMD parallelism , , . SIMD , . gotchas SIMD, . , . .
, # . . ++ , , .
, : ( , , , )
, API, . , . ( LockBits vs SetPixel, GetDIBits)
LockBits
SetPixel
GetDIBits
. , 16 . . , , . .
SIMD. 4 . . , , , , . , .
. SIMD , , SIMD.
. . . , . .
, , , ++ . , ,
, ...
, , - .Net, #.
, , , ( - - 2D-) . - Paint.Net, (http://getpaint.net).
? "" , , . , .