2018/07/31 274
结构体是类的轻量级版本。结构体是值类型,可用于创建具有内置类型功能的对象在。结构体与类共享很多功能,但与类相比存在以下限制:
System.ValueType
,而它从 System.Object
继承。protected
或 protected internal
abstract
或 virtual
,并且 override
只允许从 System.ValueType
继承的方法上重写。何时使用结构体或类?
S.N | 结构体 | 类 |
---|---|---|
1 | 结构体是值类型,在栈上分配 | 类是引用类型,在堆上分配并回收垃圾 |
2 | 值类型的分配和取消通常比引用类型的分配和取消性能高 | 大的引用类型分配比大的值类型分配性能高 |
鉴于此,结构体在您确定的时候使用:
其它情况下,应定义成类。