c 如何定义枚举-极全网
返回
顶部

修改密码

首页 > 文章 > 财经 > 正文
c 如何定义枚举

+1

-1

收藏

+1

-1

点赞0

评论0

标题:c 如何定义枚举
详情介绍-作者:xiaowei-来源: 极全网 -如有问题点击:在线客服帮助

1.c#中怎样定义枚举?


枚举类型是一种的值类型,它用于声明一组命名的常数。
(1)枚举的声明:枚举声明用于声明新的枚举类型。
访问修辞符enum枚举名:基础类型
{
枚举成员
}
基础类型必须能够表示该枚举中定义的所有枚举数值。枚举声明可以显式地声明byte、sbyte、short、ushort、int、uint、long或ulong类型作为对应的基础类型。没有显式地声明基础类型的枚举声明意味着所对应的基础类型是int。
(2)枚举成员
枚举成员是该枚举类型的命名常数。任意两个枚举成员不能具有相同的名称。每个枚举成员均具有相关联的常数值。此值的类型就是枚举的基础类型。每个枚举成员的常数值必须在该枚举的基础类型的范围之内。
示例:
publicenumTimeofDay:uint
{
Morning=-3,
Afternoon=-2,
Evening=-1
}
产生编译时错误,原因是常数值-1、-2和–3不在基础整型uint的范围内。
(3)枚举成员默认值
在枚举类型中声明的第一个枚举成员它的默值为零。
以后的枚举成员值是将前一个枚举成员(按照文本顺序)的值加1得到的。这样增加后的值必须在该基础类型可表示的值的范围内;否则,会出现编译时错误。
示例:
publicenumTimeofDay:uint
{
Morning,
Afternoon,
Evening
}
Morning的值为0,Afternoon的值为1,Evening的值为2。
(4)为枚举成员显示赋值
允许多个枚举成员有相同的值.
没有显示赋值的枚举成员的值,总是前一个枚举成员的值+1.
示例
publicenumNumber
{
a=1,
b,
c=1,
d
}
b的值为2,d的值为2.
注意:以上枚举值都不能超过它的基础类型范围。否则会报错.
(5)枚举类型与基础类型的转换
基础类型不能隐式转换为枚举类型
枚举类型也不能隐式转换为基础类型
示例:
publicenumNumber
{
a,
b,
c,
d
}
classTest
{
publicstaticvoidMain()
{
inti=Number.a;//错误,要强制类型转换(int)Number.a
Numbern;
n=2//错误,要强制类型转换(Number)2
}
}
(6)System.Enum类型
System.Enum类型是所有枚举类型的抽象基类,并且从System.Enum继承的成员在任何枚举类型中都可用。
System.Enum本身不是枚举类型。相反,它是一个类类型,所有枚举类型都是从它派生的。
System.Enum从类型System.ValueType派生
(7)使用枚举类型
usingSystem;
publicenumTimeofDay
{
Morning,
Afternoon,
Evening
}
classTest
{
staticvoidWriteGreeting(TimeofDaytimeofDay)
{
switch(timeofDay)
{
caseTimeofDay.Morning:
Console.WriteLine("goodmorning");
break;
caseTimeofDay.Afternoon:
Console.WriteLine("goodafternoon");
break;
caseTimeofDay.Evening:
Console.WriteLine("goodevening");
break;
}
}
staticvoidMain()
{
WriteGreeting(TimeofDay.Morning);
WriteGreeting(TimeofDay.Evening);
WriteGreeting(TimeofDay.Afternoon);
}
}
参考资料:浅谈C#中的枚举http://wenwen.sogou.com/z/q705197620.htm

2.c语言中的枚举型什么意思


枚举型是四种基本数据类型之一。常量、字符型、布尔型可以用来表达数,字符,真假的描述。
枚举类型在C#或C++,java,VB等一些计算机编程语言中是一种基本数据类型而不是构造数据类型,而在C语言等计算机编程语言中是一种构造数据类型。它用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型。
枚举可以根据Integer、Long、Short或Byte中的任意一种数据类型来创建一种新型变量。这种变量能设置为已经定义的一组之中的一个,有效地防止用户提供无效值。该变量可使代码更加清晰,因为它可以描述特定的值。
扩展资料
注意事项:
1、赋值运算COLOR:=RED;注意类型一致不能出界;
2、关系运算IF
3、输入枚举变量的值只能用赋值语句获得,不要用READ语句;
4、输出不能直接用WRITE语句直接输出枚举元素,系统会认为它是一个
5、未定义的变量名;必须赋给一个枚举变量,然后输出给变量的值;
参考资料来源:

3.C语,枚举常量的值是怎么定义的呀?


枚举(从JDK1.5开始有)
用于代表”实例已经固定“的类,而且定义时就必须在【第一行】创建初始化并列出来。
语法格式:
修饰符enum枚举名{
//立即在第一行列出该枚举的所有实例。
}
——修饰符可以是public|省略|abstract|final。abstract与final必须出现其中一个。
——枚举的构造器只能用private修饰。
——枚举类的实例必须在第一行显式的列出。
所有的枚举都有一个values()方法,返回枚举实例
switch(byte|short|char|int|String|枚举)
●有了枚举之后,它的实例已经创建出来了,只需要用它们就行了。
●枚举可以有Field,方法,构造器(只能是private修饰),初始化块,内部类。
列出枚举值,并不是简单的定义几个枚举值的变量名。
而是调用枚举类的构造器来创建相应的实例。
定义枚举的方法时要非常小心,
●包含抽象方法的枚举类
●枚举可以实现接口。
A。实现接口,并直接实现所有的抽象方法。
此时枚举类不再是抽象枚举了。
B。实现接口,但并不直接实现抽象方法。
此时枚举类就只能是抽象枚举类。


版权声明:本文内容由极全网实名注册用户自发贡献,版权归原作者所有,极全网-官网不拥有其著作权,亦不承担相应法律责任。具体规则请查看《极全网用户服务协议》和《极全网知识产权保护指引》。如果您发现极全网中有涉嫌抄袭的内容,点击进入填写侵权投诉表单进行举报,一经查实,极全网将立刻删除涉嫌侵权内容。

扫一扫在手机打开

评论
已有0条评论
0/150
提交
热门评论
相关推荐
换一批
热点排行