未指定显式初始化程序时执行的默认初始化由 C 语言标准保证,适用于所有没有显式初始化程序,包括 std::array
但是,需要注意的是,默认初始化对非类、非数组类型没有影响,导致它们的值不确定 (§8.5/6) 。例如,此类类型的默认初始化数组将具有不确定的值:
<code class="cpp">int plain_int; int c_style_array[13]; std::array<int, 13> cxx_style_array;</code>
要将所有元素显式初始化为 T{},请使用值初始化 (8.5/7):
<code class="cpp">int plain_int{}; int c_style_array[13]{}; std::array<int, 13> cxx_style_array{};</code>
以上是C 11 中如何处理“std::array”的默认初始化?的详细内容。更多信息请关注PHP中文网其他相关文章!