C++中的std::initializer_list
std::initializer_list是C++11提供的一種類(lèi)模板。下面是它的源碼(看不懂也沒(méi)關(guān)系,注意它有兩個(gè)迭代器,指向頭尾就好,也就是說(shuō)它其實(shí)也是一個(gè)容器):
它的構(gòu)造函數(shù)什么時(shí)候被調(diào)用?
自C++11標(biāo)準(zhǔn)開(kāi)始就引入了列表初始化的概念,即支持使用{}對(duì)變量或?qū)ο筮M(jìn)行初始化。可以使用{}給普通的構(gòu)造函數(shù)賦值,也可以直接使用std::initializer_list模板類(lèi)型作為參數(shù)(特別適合作為其他容器的初始值):
標(biāo)簽: