constexpr const_reference at( size_type pos ) const;

STL容器访问器的这种重载如何与非constexpr参数一起使用?这种重载的经典用例是什么?

最佳答案

函数声明中没有constexpr参数。仅当且仅当该函数调用中涉及的所有参数均为常量表达式时,才能在编译时评估constexpr函数调用。

话虽如此,唯一必须在编译时评估constexpr函数的情况是当它用于计算模板参数时。

您给出的示例的至少一个用例是 std::array::at

关于c++ - STL容器的constexpression下标运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20375446/

10-15 01:29