首頁 > 後端開發 > C++ > 主體

預設初始化如何與 C 11 中的 `std::array` 一起工作?

Patricia Arquette
發布: 2024-11-01 06:13:31
原創
332 人瀏覽過

How Does Default Initialization Work with `std::array` in C  11?

std::array 中的預設初始化

預設初始化是在未提供明確初始化程序時發生的初始化。對於 C 11 std::array,語法 std::array x;保證數組的所有元素都會被預設初始化。

根據 C 11 標準 (§8.5/11),任何沒有明確初始化程序的物件都會被預設初始化。這包括 std::array 物件和傳統的 C 樣式陣列。值得注意的是,預設初始化對非類別、非陣列類型沒有影響,使其值不確定。

所有數組上的值初始化

雖然預設初始化留下非-類,非數組類型不確定,值初始化將元素設為其預設值。在C 11 中,透過為每個數組元素提供一個空的初始值設定項來實現值初始化:

int plain_int{};
int c_style_array[13]{};
std::array<int, 13> cxx_style_array{};
登入後複製

這將對數組的所有元素進行值初始化,從而導致plain_int 和所有數組元素都初始化為零。

以上是預設初始化如何與 C 11 中的 `std::array` 一起工作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!