[已接受] 标准文件N4280添加了几个新的非成员函数以折叠到 C++17 中。
有评论指出每个新的非成员函数的正确返回值,特别是std::empty
固定大小数组的重载让我感到困惑。该论文建议该重载的返回值将始终为false
; 所有固定大小的数组永远不会为空。
为什么会这样?据我所知,有可能(尽管可能没用)有一个大小为零的数组,如int x[0];
,我称之为空的。
作为参考,我所说的特定过载是:
template <class T, size_t N> constexpr bool empty(const T (&array)[N]) noexcept;