C ++ 11标准是否指定numeric_limits<T>::min
和max
必须是可在模板或static_assert
中使用的常量表达式?
更一般地说,如何根据标准找到常量表达式的函数列表?
答案 0 :(得分:8)
事实上,标准(或我最新的工作草案)将 18.3.2.3 [numeric.limits] 一章中std::numeric_limits
的所有成员列为constexpr
(它不会对于一般模板化版本以及所有内置特化( 18.3.2.7 [numeric.special] ),可以在这里引用这些定义。)所以是的,它们被保证是常量表达式(当然,对于实际上也支持constexpr
的符合实现)。
关于你的第二个更普遍的问题,除了仅仅提到C ++标准本身之外,我无法帮助你,它的最新草案与实际标准没有什么不同,可以免费获得。或者你可能会看到更方便但更少约束cppreference.com。