C#-枚举类型、结构体类型和委托类型

枚举:enum

枚举定义在 namespace 下,这样在当前的命名空间下,所有的类(class)都可以使用该枚举。

public enum 枚举名
{
值 1, 值 2, 值 N
}

//使用枚举类型
枚举类型 变量名 = 枚举类型.值;

结构体:struct

定义在 namespace 下

public struct 结构体名称
{
public 数据类型 变量名;
public 数据类型 变量名;
public 数据类型 变量名;
}

//使用结构体
//创建结构体类型的变量:
结构体类型 结构体变量名 = new 结构体类型();
Person monkey = new Person();
//给结构体赋值:
结构体变量名.变量名 = 值;
monkey.age = 27;
//结构体取值:
结构体变量名.变量名;
monkey.age;

委托(delegate)

委托(delegate)是⼀种存储函数引⽤的类型。
委托的定义指定了⼀个返回类型和⼀个参数列表
定义了委托之后,就可以声明该委托类型的变量,接着就可以把⼀个返回类型跟参数列表跟委托⼀样的函数赋值给这个变量。
委托呢,就是⼀个函数类型,可以把⼀个函数赋值给委托类型。
定义委托的时候,跟函数有点像,只不过没有函数体。
只能赋值-参数和返回值⼀样的函数。

delegate double MyDelegate(double param1,double param2);
static double Multiply(double param1,double param2){
return param1*param2;
}
static double Divide(double param1,double param2){
return param1/param2;
}
double param1 = 34; double param2 =2;
MyDelegate de;
de = Multiply;
de(param1,param2);
de = Divide;
de(param1,param2);

posted on   Shazam_sjtu  阅读(81)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示