结构体类型是一种值类型,是自定义数据类型
作用:用来表示一系列相似的事物:
* 统称(名称) * 字段成员(用来描述事物本身具备的值属性的变量) * 函数成员(用来描述相似事物具备的功能行为 )
声明样式:
* struct 结构类型名称
* {
* 字段成员
* 函数成员
* }结构体类型描述的是一系列相似事物的抽象,通过类型可以创建任意的变量。
- 结构体类型是抽象的,而结构体变量是具体的,就表示一系列相似事物中一个具体的事物。
//声明结构体类型表示人
struct Person
{
//实例字段成员
public string name; //姓名
public int age; //年龄
//函数成员
public static void Eat()
{
Console.WriteLine("吃饭");
}
public static void Sleep()
{
Console.WriteLine("睡觉");
}
}
class Program
{
static void Main(string[] args)
{
//声明结构体变量
Person person00;
Console.WriteLine(person00);
//给结构体变量赋值或初始化就是对全部的实例字段成员做赋值操作
//new表达式在这里不会创建对象,结构体是值类型,只有结构体变量占用一块内存空间。
Person person01 = new Person();
//访问实例字段成员
Console.WriteLine(person01.age);
//Console.WriteLine(person00.age);
Console.WriteLine(person01.name);
person01.name = "Lily";
Console.WriteLine(person01.name);
//使用结构体变量之前,这个变量必须被完整赋值或初始化
//赋值:结构体变量完整赋值就是对全部的实例字段成员进行赋值操作
person00.name = "Jerry";
Console.WriteLine(person00.name);
person00.age = 3;
Console.WriteLine(person00);
//使用一个已经完整赋值或初始化的结构体变量对其他结构体变量做赋值或初始化操作
Person person02 = person00;
//访问结构体的函数
Person.Eat();
Person.Sleep();
Console.ReadKey();
}
}