c#结构体

1结构体概念

自定义变量类型

是数据和函数的集合在结构体中

可以声明各种变量和方法

结构体一般写在 namespace语句块中 struct

2 结构体构成

第一部分 变量

第二部分 构造函数可选

第三部分 函数

默认不写访问修饰符,就是私有的

结构体中声明的变量不能直接初始化 变量类型可以任意 包括结构体 但不能是自己的结构体

结构体例子

cs 复制代码
struct People{
    public int age;
    public bool sex;
    public int number;
    public string name;
    //People p; 错误写法 不能是自己的结构体
    person p; //可以是别的结构体的
   }

结构体中的方法 不需要加static 关键字

结构体中的函数可以直接使用内部声明的变量

结构体中函数例子

cs 复制代码
public void Speak()
{
    Console.WriteLine(name,age);
}

构造函数 是一般方便在外部初始化

结构体的构造函数 没有返回值 也不能写void,

函数名和结构体名相同 必须有参数

如果声明了构造函数 那么必须在其中对所有变量数据初始化。

结构体构造函数

cs 复制代码
 public People(int age,bool sex,int number,string name)
 {   //this 代表自己的
     this.age = age;
     this.sex = sex;
     this.number = number;
     this.name = name;
 }

3 结构体使用

变量类型 变量名;

cs 复制代码
People p;
p.age = 18;
p.name = "shan";
p.sex = false;
p.number = 1;
p.Speak();

用构造函数的使用

cs 复制代码
People p2 = new People(18, true, 2, "fly");
p2.Speak();
相关推荐
唐青枫12 小时前
线程不是越多越快:C#.NET Thread 生命周期、同步与后台工作线程实战
c#·.net
唐青枫1 天前
别只会反射:C#.NET Emit 动态生成代码实战详解
c#·.net
咕白m6252 天前
.NET 环境下 Word 超链接批量提取方案
c#·.net
用户91721561902112 天前
C# 通信协议增量解析:用状态机处理半包和粘包
c#
小码编匠2 天前
C# 工控上位机必备:数据转换工具类与十个核心模块
后端·c#·.net
唐青枫4 天前
别再乱用 StartNew:C#.NET TaskFactory 任务调度实战详解
c#·.net
Artech5 天前
[MAF预定义的AIContextProvider-03]ChatHistoryMemoryProvider——赋予Agent从经验中学习的能力
ai·c#·agent·memory·maf
Scout-leaf6 天前
C#摸鱼实录——IoC与DI案例详解
c#
咕白m6256 天前
使用 C# 在 Excel 中应用多种字体样式
后端·c#
Artech7 天前
[MAF预定义的AIContextProvider-02]AgentSkillsProvider——将Agent Skills引入MAF
ai·c#·agent·agent skills·maf