安全地初始化一个std::array的布尔值

鉴于此数组声明和初始化:

std::array<bool, 20> invalid_params{};

我可以假设数组中的所有元素都将始终初始化为 false,还是最好明确地进行初始化?

回答

它保证填充有false值。

std::array是一个聚合,因此它没有用户定义的构造函数,因此值初始化它执行零初始化。


但是如果您删除{}(将其转换为默认初始化),则元素将未初始化。


以上是安全地初始化一个std::array的布尔值的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>