资讯详情

【c++】C++:enum的一些用法

📅 2026/10/23 5:30:45 | 华诺云谱 👁 阅读
【c++】C++:enum的一些用法
哈哈真的看C代码快看哭了但是LZ还是会继续哒O(∩_∩)O哈哈~其实枚举这个不是很难看还是看的懂的想着既然看到就作为一个知识点积累一下毕竟好记性不如烂笔头回头查找起来也方便哈遇到的代码如下enum ErodeType{ Erode_NONE 0, Erode_SEG_BORDER 1, Erode_ALL_BORDER 2 };枚举类型顾名思义“枚”作为量词作“个”讲那么枚举就是一个一个的列举如果一件事情能够被一个一个的列举那么它的数量肯定就是有限的否则是不能被一一列举出来的。所以枚举类型即为能被列举的常量的一个集合。在生活中枚举的例子随处可见比如礼拜几那么就可以作为一个枚举变量。这个变量所存储的值是有限的且能被我们所列举。再比较说性别。它也可以作为一个枚举类型我们知道性别也就有“男”或者“女”它是可以被我们所列举的。它能很直观的表达出我们所定义的事件。如定义一个枚举类型的变量虽然不知道变量具体是什么值但能知道它可能会有哪些值这样这样就能对程序中所出现的变量的取值有一个很好的估量从而使程序的编写更加顺利。枚举类型的定义写结构体的定义相似其形式为enum 枚举名{ 标识符[整型常数], 标识符[整型常数], ... 标识符[整型常数], } 枚举变量;如果枚举没有初始化, 即省掉整型常数时, 则从第一个标识符开始,依次次赋给标识符0, 1, 2, …。但当枚举中的某个成员赋值后, 其后的成员按依次加1的规则确定其值。例如下列枚举说明后, x1, x2, x3, x4的值分别为0, 1, 2, 3。enum string{x1, x2, x3, x4}x;当定义改变成:enum string { x1, x20, x350, x4, }x;则x10, x20, x350, x451注意:枚举中每个成员(标识符)结束符是,“,不是”;, 最后一个成员可省略 “,”。初始化时可以赋负数, 以后的标识符仍依次加1。枚举变量只能取枚举说明结构中的某个标识符常量。 例如:enum string { x15, x2, x3, x4, };enum strig xx3;此时, 枚举变量x实际上是7。4在外部我们可以对枚举变量进行赋值不过得要进行类型转换。如果我们不进行类型轮换即如下所示进行赋值x 3;是不允许是如果对X进行赋值只能对进行类型转换即x (string)3;那么这样就对了如果给x赋的不是一个整形的数而是一个字符型的如x (string)a;那么这时候x的值并不是字符’a’,而是’a’的ASCII码我们知道在枚举类型中各常量的值只能是整形的所以在对上例会自动的将’a’转换成一个整数值从内存的角度来看来话其实C/C中整形和字符型的变量是一样的它们之间可以互相转换参考地址http://www.cnblogs.com/dabaopku/archive/2010/04/21/1717331.html
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑