的 - 背景信息:枚举类用C型串++
有一个在C++ 11已知为可以存储内部变量的枚举类的类。不过,我只看到了类的类型是char:
enum class : char {
v1 = 'x', v2 = 'y'
};
- 问:
有什么办法,我可以表达这种枚举类类型的字符串?
例如,
enum class : string{
v1 = "x", v2 = "y"
};
- 我想什么:
我尝试使用它,但我得到的错误,我不知道如果我这样做是正确与否。我想使用字符串的原因是它们能够同时容纳多个字符,所以它使它们对我的代码更有用。
好吧,这意味着我们只能将枚举类表示为char,而不是int,字符串或任何其他类型。 – Kourosh
@CinCout评论中的所有内容都不正确。只有在没有指定类型的情况下,作用域枚举的基础类型才是“int”,在上例中不是这种情况。而'char'肯定不是'int'。 – Praetorian
@Kourosh *在C++ 11中有一个类称为枚举类* ...否,没有这样的类,'enum class'用于定义范围枚举。下面的答案链接到解释这些内容的文档。 – Praetorian