- struct类型是一种值类型,通常用来封装小型相关变量组
- struct可以包含的成员:构造函数、常量、字段、方法、属性、所引器、事件和嵌套类型,如果同时需要以上类型,则应当考虑使用类而不是结构体
- 结构可以继承自类(单继承,不同于C++)和实现接口,单不能继承自了一个结构
- 结构成员无法声明为 protected(因为结构无法被继承)
- 结构体在栈上分配内存空间
- 结构体申明位置:与类平级或位于类内部但不能位于方法体内
- 不能新申明无参数的构造函数
- 结构体可以申明静态构造函数,但该函数不能有访问修饰符且该函数无参数
- 结构体内的非构造函数的静态方法除了访问修饰符必须是 public,其它跟在类中声明方式一样
- 结构体实例的申明可以不用 new,不同于类等引用类型
例子:
struct S { private int d = 0; public int D { get { return d; } set { d = value; } } public S(int p) { D = p; } public static int Sum(int a, int b) { return a + b; } }