结构是一种值类型,通常用来封装小型相关变量组。
结构可以包含构造函数、常量、字段、方法、属性、索引器、运算符、事件和嵌套类型。
例子
public struct Person
{
private int iD;
public string Name;
public int ID
{
get { return iD; }
set { iD = value; }
}
public string GetName()
{
return Name;
}
}
private void button1_Click(object sender, EventArgs e)
{
Person person = new Person();
person.Name = "小明";
MessageBox.Show(person.GetName());
}
结构与类的不同
1.类型不同
结构是值类型,值类型的内存地址系统自动分配。栈。
类是引用类型,需要申请。比如用 new 关键字。堆。
栈的执行效率要比堆的执行效率高,但是栈的资源有限,不适合处理大的复杂的对象。
结构不能给字段初始值。如:public struct Person { public int ID = 0; } 是不行的。
2.继承性
结构无法继承另一个结构,但可以继承接口。
结构常用于存储数据,如表示点的坐标,点的颜色等,在处理一些逻辑算法时都用类。



