我在試圖找出如何以固定大小初始化std::vector<Object *>
,因爲之後我不需要再改變它。所以我使用這個代碼(所述載體是空前):基本類型std :: vector的默認值
mControllerItem.resize(nLines, nullptr);
按照documentation第二元件可以被用來指定一個默認將被複制到新的元件,但是這是可選的。如果沒有給出第二個參數,那麼使用默認的構造函數。
在指針,int等基本類型的情況下,這裏使用了什麼?在鏈接中它沒有提到任何關於它的內容。他們會被初始化爲0,他們保持未定義,還是有一些其他機制,確定他們將得到什麼值?在鏈接的例子中,輸出爲0,所以我認爲它與此無關,但是這是否是保證,還是這個實現(或未定義)?
'std :: vector
@Borgleader Thx!我改變了這一點。這有什麼不同嗎? – Devolus
他們將零初始化 – user3125280