使用C ++ 11; MingW平台; Ubuntu 12.04 LTS:
假设:
enum TMyEnum
{
Enum_1, Enum_3, Enum_3
};
什么函数会告诉我TMyEnum中有多少成员,在这种情况下是3?
答案 0 :(得分:4)
一个技巧是在最后提供一个计数项目,例如:
enum TMyEnum
{
Enum_1, Enum_2, Enum_3,
Enum_4, Another_Enum,
Enum_count
};
然后TMyEnum::Enum_count
应该提供您的枚举集的基数。只需确保在Enum_count
之前添加新的枚举。 Example:
#include <iostream>
enum TMyEnum
{
Enum_1, Enum_2, Enum_3,
Enum_4, Another_Enum,
Enum_count
};
int main() {
std::cout << TMyEnum::Enum_count << std::endl;
}
5
答案 1 :(得分:0)
如果您要将其与默认值一起使用,您可以使用以下内容:
enum TMyEnum
{
Enum_1, Enum_3, Enum_3, No_of_Enums
//^^=3
};