2013-06-04 49 views
0

有这样的事情(例如):按标签检查枚举值

enum { 
    label1, 
    label2, 
    //label3, 
    label4, 
    total} 

是否可以检查是否有任何标签的存在?

我需要total值才能创建正确大小的矩阵,但需要知道哪些标签出现在列表中以便执行特定于每个项目的操作。

+1

从某种意义上说,你不可能做到Enum :: label3 == undefined。使用字符串列表或智能化的枚举类 – dchhetri

+0

这听起来像一个枚举可能不是在你的情况下使用的最好的东西。 –

回答

1

试试这个:

enum My_Labels 
{ 
    label1, 
    label2, 
    // label3, 
    label4, 
    total 
}; 

static My_Labels check1 = label1; 
static My_Labels check2 = label2; 
static My_Labels check3 = label3; 
static My_Labels check4 = label4; 

你应该得到一个编译错误,任何缺少的元素。

此外,如果您注释掉label3,则label4的值会更改。