Description |
C++/CLI |
C# |
Allocate reference type |
ReferenceType^ h = gcnew ReferenceType;
|
ReferenceType h = new ReferenceType();
|
Allocate value type |
ValueType v(3, 4);
|
ValueType v = new ValueType(3, 4);
|
Reference type, stack semantics |
ReferenceType h;
|
N/A |
Calling Dispose method |
ReferenceType^ h = gcnew ReferenceType;
delete h;
|
ReferenceType h = new ReferenceType();
((IDisposable)h).Dispose();
|
Implementing Dispose method |
~TypeName() {}
|
void IDisposable.Dispose() {}
|
Implementing Finalize method |
!TypeName() {}
|
~TypeName() {}
|
Boxing |
int^ h = 123;
|
object h = 123;
|
Unboxing |
int^ hi = 123;
int c = *hi;
|
object h = 123;
int i = (int) h;
|
Reference type definition |
ref class ReferenceType {};
ref struct ReferenceType {};
|
class ReferenceType {}
|
Value type definition |
value class ValueType {};
value struct ValueType {};
|
struct ValueType {}
|
Using properties |
h.Prop = 123;
int v = h.Prop;
|
h.Prop = 123;
int v = h.Prop;
|
Property definition |
property String^ Name { String^ get() { return m_value; } void set(String^ value) { m_value = value; } }
|
string Name { get { return m_name; } set { m_name = value; }
|