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();
相关推荐
warpdrivelabs2 小时前
Codex 开源 harness 全面了解
开发语言·人工智能
丰锋ff6 小时前
基于 Qt 的智能门禁系统(二)
开发语言·qt
rockey6276 小时前
C#脚本引擎之AScript与Jurassic、Jint对比
javascript·c#·.net·js·script·动态脚本
fpcc6 小时前
跟我学C++中级篇——编译期的条件选择
开发语言·c++
SomeB1oody6 小时前
【RustyML入门】6.3. 并行归约
开发语言·后端·机器学习·rust·教程
mqiqe7 小时前
AgentScope Java 2.0 协议集成全景解析:A2A、AG-UI、Agent Protocol 三大开放协议实战指南
java·开发语言·ui
lzhdim8 小时前
12、JavaScript常见的内存泄露问题 - JavaScript学习系列文章
开发语言·前端·javascript·学习·ecmascript
脉动数据行情8 小时前
Java 实现台股 TWSE/TPEx 行情采集(个股 + K 线)
java·开发语言·twse·tpex·台股
爱学习的小邓同学8 小时前
Golang --- (1)第一个Golang程序
开发语言·后端·golang
zx_741484819 小时前
【Python 入门】面向对象基础:类、对象、成员变量与构造方法
开发语言·python