1 / 8
文档名称:

龙图教育C结构体struct的使用方法.docx

格式:docx   大小:72KB   页数:8页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

龙图教育C结构体struct的使用方法.docx

上传人:63229029 2017/4/8 文件大小:72 KB

下载得到文件列表

龙图教育C结构体struct的使用方法.docx

文档介绍

文档介绍:C# 结构体 struct 的使用方法 C# 中结构类型和类类型在语法上非常相似,他们都是一种数据结构,都可以包括数据成员和方法成员。结构和类的区别: 1、结构是值类型, 它在栈中分配空间; 而类是引用类型, 它在堆中分配空间, 栈中保存的只是引用。 2、结构类型直接存储成员数据, 让其他类的数据位于对中, 位于栈中的变量保存的是指向堆中数据对象的引用。 C# 中的简单类型,如 int 、 double 、 bool 等都是结构类型。如果需要的话, 甚至可以使用结构类型结合运算符运算重载,再为 C# 语言创建出一种新的值类型来。由于结构是值类型, 并且直接存储数据, 因此在一个对象的主要成员为数据且数据量不大的情况下,使用结构会带来更好的性能。一、声明结构的语法- struct 关键字 public struct AddressBook { //字段、属性、方法、事件} 对于类而言, 两个变量指向同一个对象的情况是存在的, 因此对这样两个变量中的任意一个进行操作,起结果必然会影响另外一个,因为它们指向的是同一个对象。结构是值类型,, 直接包含它自己的数据, 每个结构都保存自己的一份数据, 修改每一个结构的数据都不会对其他结构的数据造成影响。二、给结构赋值如果从结构中创建一个对象, 并将该对象赋给某个变量, 则该变量包含结构的全部值。复制类型为结构的变量时, 将同时复制该结构所持有的所有数据。由于结构不是引用类型, 因此结构类型的变量不能被赋予 null 值。 public class Program { static void Main( string [] args) { PersonStruct p1, p2; //与类一样,但可以不 new ="张飞"; = "**********" ; = (- 10 ); p2 = p1; //将p1的值赋给 p2 //由于是值类型, 因此赋值等于将全部值全部复制到 p2 的栈空间 ="关羽"; //然后修改 p2 的值看是否会影响 p1 (); //输出张飞没影响 PersonClass p3 = new PersonClass(); ="张飞"; = "**********" ; = (- 10 ); PersonClass p4 = new PersonClass(); p4 = p3; //将 p3 的值赋给 p4 赋值后,由于是引用类型,因此两个对象指向的是同一个地址(堆空间) ="关羽"; //然后修改 p4 的值看是否会影响 p3 (); //输出关羽没影响 (); }} public class PersonClass { public string Name; public string MobilePhone; public DateTime Birthday; } public struct PersonS