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();
相关推荐
2501_933329553 小时前
企业级舆情监测系统技术解析:Infoseek数字公关AI中台架构与实践
开发语言·人工智能·自然语言处理·架构
Wave8453 小时前
C++继承详解
开发语言·c++·算法
Tairitsu_H3 小时前
C++类基础概念:定义、实例化和this指针
开发语言·c++
.柒宇.3 小时前
Java八股之反射
java·开发语言
环流_3 小时前
多线程1(面试题--常见的线程创建方式)
java·开发语言·面试
Han_han9193 小时前
常用API:
java·开发语言
minji...3 小时前
Linux 线程同步与互斥(四) POSIX信号量,基于环形队列的生产者消费者模型
linux·运维·服务器·c语言·开发语言·c++
Highcharts.js4 小时前
在 React 中使用 useState 和 @highcharts/react 构建动态图表
开发语言·前端·javascript·react.js·信息可视化·前端框架·highcharts
likerhood4 小时前
java中的return this、链式编程和Builder模式
java·开发语言
田井中律.4 小时前
知识图谱(关系抽取方法)【第十章】
人工智能·c#·知识图谱