[C#] struct 结构
时间:2011-05-06 来源:蚂蚁蚂蚁
- struct为自定义值类型的关键字
- 确保值类型是不可变的,虽然语言本身未作要求。即一旦实例化好了一个值类型,这个实例就不能修改。
- struct可以包含属性、字段、方法、构造器,但不能包含无参数的构造器。
- 在实例化一个struct数组时,不会调用值类型的构造器,因数组内存会用零初始化。
- 构造器初始化时不能针对属性进行初始化,会产生编译错误。
- struct不支持终结器
- struct的继承链:object->ValueType->struct。
Boxing & Unboxing 装箱和拆箱
- 值类型到引用类型转换,装箱。
- 引用类型到值类型转换,拆箱。
- 值类型不能用于lock语句。
- 在通过接口访问已装箱的值时,不需要进行复制。
相关阅读 更多 +