读书人

VC中枚举类型的一个奇怪有关问题

发布时间: 2013-02-06 14:02:20 作者: rapoo

VC中枚举类型的一个奇怪问题
emum enum_key
{
KEY_0 = 0, // = 0
KEY_1 = 1, // =1
KEY_2,
KEY_3,
KEY_4,
KEY_5,
KEY_SPACE = 3,
KEY_ESC,
KEY_ENTER
};


红色部分的index怎么会相同呢?
很古怪的问题

[解决办法]
枚举类就是这样的特性,如果没有对其枚举变量进行初始化,那么其变量值从上面最后一个赋初值的变量开始,依次+1,直到下一个被初始化的变量为止。

例子中,KEY_0到KEY_5分别是从0-5,而KEY_SPACE被初始化为3,那么后面的KEY_ESC和KEY_ENTER也分别是4和5。

读书人网 >C++

热点推荐