AI智能
改变未来

C#学习笔记——枚举和结构体


1.枚举

枚举类型是自定义类型,

enum EquipType{Weapon,  //武器Armor, //护甲Shoes,  //鞋子Ring=5,  //戒指Necklace //项链 ->值为6}

枚举是一个值类型,枚举值可以标记一个整形数字予以匹配,默认从0开始。可以显示转换位数字或者文字

int a=(int)Weapon 结果位0
Enum或EquipType 变量名=(EquipType)0; 结果是武器

2.结构体

结构体是自定义类型

struct Equip{public EquipType type;        //装备类型public string name;        //装备名字public string des;        //装备描述public int hp;        //血量public int atk;        //攻击力public int speed;        //速度//构造函数public Equip(EquipType type, string name, string des, int hp, int atk, int speed, int crit, int dodge,int bmoney){this.type = type;this.name = name;this.des = des;this.hp = hp;this.atk = atk;this.speed = speed;}};

声明结构体内容以及构造函数
ps:构造函数可以通过快速操作一键创建

3.枚举和结构结合应用

        static void Log(string text){Console.WriteLine(text);Thread.Sleep(1000); //程序休眠,单位毫秒 1000=1s}//装备结构体static Equip Weapons;        //武器结构体static Equip Armor;        //护甲结构体static Equip Shoes;        //鞋子结构体static void EquipItem(Equip equip){switch (equip.type){case EquipType.Weapon:Log(name + \"装备了武器:\" + equip.name + \",攻击力+\" + equip.atk);weapon_atk = equip.atk;Weapons = equip;break;case EquipType.Armor:Log(name + \"装备了护甲:\" + equip.name + \",生命值+\" + equip.hp);armor_hp = equip.hp;Armor = equip;break;case EquipType.Shoes:Log(name + \"装备了鞋子:\" + equip.name + \",速度+\" + equip.speed);shoes_speed = equip.speed;shoes = equip;break;}}//应用EquipItem(new Equip(EquipType.Weapon, \"长剑\", \"新人必备\", 0, 10, 0));
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » C#学习笔记——枚举和结构体