的 - 背景信息:枚舉類用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