The following table provides a summary of the most common constructs for quick reference.
| 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; } } |
3879

被折叠的 条评论
为什么被折叠?



