C++11 作用域内枚举
生活随笔
收集整理的這篇文章主要介紹了
C++11 作用域内枚举
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 enum class MyEnum{
2 P1 = 1,
3 P2,
4 P3,
5 P4,
6 P5
7 };
8
9 MyEnum myEnum = MyEnum::P2;
使用作用域的方式獲取并限定P2的值。之所以要使用作用域,是為了避免歧義。比如考慮以下情況
enum class Enum1{P1 = 1,P2 = 2 };enum class Enum2{P1 = 10,P2 = 11 };兩個枚舉,里面的元素名字一樣,但是如果還是執行 Enum1? myEnum = P2 的話,會出現歧義:這個P2到底是誰的P2。所以c++11中推出了這種表達方式
?
作用域內枚舉不能直接通過cout輸出,可以把他轉化為int型
cout << int( myEnum ) << endl;?
歡迎補充,一同進步
轉載于:https://www.cnblogs.com/Yukisora/p/8857294.html
總結
以上是生活随笔為你收集整理的C++11 作用域内枚举的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BZOJ3527:[ZJOI2014]力
- 下一篇: 博客营销与微博网络营销的区别