【发布时间】:2011-10-24 04:09:01
【问题描述】:
我目前正在将我的代码从旧式枚举迁移到枚举类。
强类型很好,但我在代码中遇到了一个点,我需要调用 ncurses 的 init_pair() 函数,该函数将 short int 作为其第一个参数,但我已将其转换为枚举类对开发人员友好的阅读。
为了让编译器满意,看来我需要在第一个参数上使用static_cast<short int>()。
有没有更简洁的方法,或者如果我必须使用 static_cast,你建议我如何使用它?
接受的答案:Chris Dodd 的回答很好。在切换之前,我到处都有代表旧式枚举的整数。切换后,我在其余代码中都有一个带有类型安全枚举的脏强制转换。肮脏被隔离在一个地方,代码更安全,更容易阅读。这是一个显着的改进。
【问题讨论】: