列表初始化

4種初始化

    int units_sold = 0;
    int units_sold = { 0 };
    int units_sold{0};
    int units_sold(0);

在c++11中用花括號初始化變量得到全面應用。這種初始化形式被稱爲列表初始化(list
initialization)。無論是初始化對象還是某些時候爲對象賦新值,都可以使用這樣一組
由花括號括起來初始值。

注意: 當用於內置類型的變量時,這種初始化形式有一個重要特點:如果我們使用列表
初始化值,當存在信息丟失風險時,編譯器將報錯,如:

long double ld = 3.1415926536;
int a{ld},b = {ld}; //錯誤,轉換未執行,存在信息丟失風險
int c(ld), d = ld; //正確
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章