struct 与class的区别 C#与C++的区别
在C++中的区别:
1.默认成员的保护级别:struct默认是public ,class 默认是private
2.默认派生类的保护级别:struct默认是public, class默认是private
在C#中的区别:
默认成员的保护级别都是private, struct 是值类型,该类型的对象实在栈上分配内存;
class是引用类型,该类型的对象是在堆上分配内存。
C#与C++的区别:
1.struct与class的区别;
2.在C#中有Finalize 或Dispose 方法用来释放申请的资源。Finalize方法虽然写法与C++中的析构函数相同,
都是~加类型名,但是调用时机不同。Finalize是CLR在垃圾回收时进行调用的,他的调用时机是运行时决定的,
因此对程序员来说是不确定的。而C++中的析构函数是由程序员手动释放的。
3.在C#中可以定义静态构造函数,在第一次使用对象时调用。而C++中则没有静态构造函数。

浙公网安备 33010602011771号