首頁  >  文章  >  後端開發  >  std::array 可以預設初始化嗎?

std::array 可以預設初始化嗎?

DDD
DDD原創
2024-10-31 03:29:02654瀏覽

Can std::array be Default-Initialized?

std::array 可以預設初始化嗎?

透過將變數宣告為 std::array x;,你可以保證它的所有元素都會被預設初始化。根據 C 11 語言標準 (§8.5/11),任何沒有明確初始化程序的物件都是預設初始化的。

但是,您應該知道預設初始化對非類別、非陣列類型 (§8.5/6),使其值不確定。例如,此類類型的預設初始化數組將具有不確定的值。

陣列的值初始化

如果您希望將所有陣列元素初始化為特定值value T{},這不是預設初始化而是值初始化(8.5/7 )。您可以在C 11 中使用空初始化器輕鬆地對數組進行值初始化:

<code class="cpp">int plain_int{};
int c_style_array[13]{};
std::array<int, 13> cxx_style_array{};</code>

這將對所有數組元素進行值初始化,從而導致整數值一致為0 及其各自資料的默認值類型。

以上是std::array 可以預設初始化嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn