•struct是值类型,内存分配在栈上,class是引用类型,内存分配在堆上。值类型不能设为null
•struct implicitly derived from System.ValueType
•对struct中变量赋值会产生赋值的一个拷贝
•struct没有继承,其成员不能用protected修饰,class可以继承和多态
•struct多用来存储数据,而class则作为类的抽象
•struct不能有初始化成员
•this的意义和class的this不同??
struct不能有显式无参构造器,因为其中的成员自动被初始化为默认值,其中的引用类型被设置为null。但可有静态无参构造器
class可以定义析构器,但struct不能
class用于对象建模,而struct更倾向于数据的整合
struct的构造器必须初始化所有成员,而class不需要
class使用实例时,必须使用new关键字,而struct不用
class作为参数时,是引用传递,而struct则为值传递 |