PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
Re: [分享] C++11 : Strongly typed enumerations
楼主:
ot32em
(reverse(wasefo);)
2014-09-11 00:01:58
最近有用到 enum class 当做是某些值的 key
就有用到需要把 enum 内的值都走一遍
来检查 KEY 对应的值有没有存在
然后就有遇到 enum class 要巡回
要转换成 integer +1 会很麻烦
后来有参考到 StackOverflow 上的一些解法
"把他做成 Iterator"
这里我有实作出一个简单的 Enum Wrapper
可以 for(auto key: Enum<YOUR_ENUM>()){ ... }
就能够走一遍
不过还是有一些限制
像是要连号跟要指定 First/Last 元素
但是己经可以省下一些转型的手续
http://ot-note.logdown.com/posts/231687
※ 引述《akasan (KITO)》之铭言:
: 好读版 : http://kitoslab.blogspot.tw/2012/09/c11-strongly-typed-enumerations.html
: 因为我不太会上色所以这边只有难读版的XD....
: - 回顾 enum
: 在 C++11 以前以下 enum 会污染整个 namespace
: 大致的意思是如果你宣告了一个 enum E, 他有 A, B, C 三个值
:
作者:
carylorrk
(carylorrk)
2014-09-14 04:03:00
在没有 compile-time reflection 之前看到的解决方法大多还是以 MACRO 产生包含所有值的 array 为主不过通常会先避免需要 iterate 所有值的情况。记得之前有看到用 macro 产生类似 java enum util 的有点类似这样 但是更完整(支援自订值和 namespace 等
http://goo.gl/QUr5ed
继续阅读
[问题] 想请板友提供Windows视窗程式理解建议
BIAO
[问题] 服务程式设计...
BIAO
Re: [问题] 乱数生成问题(已修改问题)
wope
[分享] 一个 variadic template 形式的问题
yoco315
[问题] 请问C++在DLL内使用Sqlite方法
jerelee
[问题] 冒泡排序的问题
kdok123
Re: [问题] 指标理解与op比较运算子
Killercat
[问题] 宣告问题?
aris1008
Re: [问题] 指标理解与op比较运算子
bleed1979
[问题] 指标理解与op比较运算子
laiDark
Links
booklink
Contact Us: admin [ a t ] ucptt.com