C#struct 和class的不同

来源:互联网 发布:电脑背四级单词软件 编辑:程序博客网 时间:2024/06/01 07:13

1类型不同

class对象是在堆上存储的,所以对象为应用类型

struct 是在stack 上存储的,所以struct为值类型 

2。

编译器会强制给struct 提供一个默认(无参)构造函数,所以不能自己定义无参构造函数

对于class ,编译器是在没有自定义无参构造函数才会提供该函数

3。

struct 不能在声明实例字段时同时赋值,class 可以

4。在自己的构造函数中,struct 不会给实例字段自动赋值,class 会