Similarities
Object oriented
Uses dynamic dispatch
Syntax similar to C++
Garbage collection
Differences in C#
Deterministic disposal
No soft references
Object pinning
Pointers (inside unsafe blocks)
Built-in large decimal support
Fixed length strings
Value types
Partial classes
Controllable arithmetic overflow checking
Goto in switch structures
Output and reference parameters
Switch supporting strings and longs
Iterator expression via yield
Delegates for callbacks and events
Operator overloading
Lambdas and expression trees
Partial methods
Extension methods
Conditional compilation
Namespaces and file names more like C++
Native code invocation via P/Invoke

No comments:
Post a Comment