【发布时间】:2017-02-01 04:35:08
【问题描述】:
使用强类型枚举代替枚举有一些很好的论据。然而,除了不必要的风险之外,到 int 的可转换性还提供了一些不错的用例。就我而言,主要是将其放入字符串流中进行记录和比较。
enum RiskLevel { None, Warn, Low, High, Critical };
void logStuff( RiskLevel rl ) {
stringstream ss;
ss << rl;
LOG(s);
}
void compareEnum( RiskLevel rl ) {
if ( rl > RiskLevel::Low ) {
...
}
}
我确实怀念旧枚举的这些功能,而且我可能不是唯一一个。有什么好的方法可以使用强类型枚举并且仍然可以轻松地记录和比较它们?
【问题讨论】:
-
我对其进行了编辑以表示我使用枚举的实际示例
-
对不起,我不记得强类型枚举是什么。
标签: c++