是否值得只包含type_traits以获取枚举的基础类型
Is it worth including type_traits only to get the underlying type of an enum?
我想知道仅仅为了获取枚举的底层类型而包含type_traits
标头是否真的值得。我正在创建一个 Flags 类,我希望它尽可能灵活,所以我使用 std::underlying_type<T>::type
来获取类型。例如,我可以使用int
但是如果用户想要使用超过 32 个标志怎么办?所以我的问题是,当经常使用时,它会大大减慢编译时间吗?
如果你需要 std::underlying_type 那么你就需要它。编写自己的代码或破坏代码是没有意义的。如果要最小化编译时间,请在标头中向前声明模板类,并仅在 .cxx 文件中使用 type_traits.cxx,这样您就不必继承不同文件中不需要的标头。
相关文章:
- 用于获取枚举值的用户输入
- 从 cin 获取 c++ 中结构中多个枚举的输入
- 给枚举一个整数,并在 C++ 中将其相关值作为字符串获取
- 重载输入 (>>) 运算符以获取枚举字符串
- 其他类中的枚举类的二传手和获取器
- 如何从枚举类型中获取枚举值?
- 如何获取枚举项的类型?
- 模板结构的多个声明,用于获取枚举,描述模板类型
- 如何获取句柄并枚举注册表路径:"REGISTRYA"?
- 在类中获取并设置枚举变量
- 获取 [枚举成员?] 的封闭类型
- 是否值得只包含type_traits以获取枚举的基础类型
- 为什么可以获取此枚举成员值,而不必先深入研究嵌套枚举
- 如何从MS Word 2007中获取枚举类型值
- C++从枚举值中获取位偏移
- 如何使用 libclang 获取枚举元素的数值?
- 在编译时获取枚举类大小,而无需定义其他元素
- 如何从boost::property_tree获取枚举
- 如何从枚举项的值中获取其名称
- 无法获取库上的枚举(未定义的引用静态元对象)