76、统⼀的初始化语法

不同的数据类型具有不同的初始化语法。如何初始化字符串?如何初始化数组?如何初始化多 维数组?如何初始化对象? C++11给出了统⼀的初始化语法:均可使⽤“{}-初始化变量列表”:

X x1 = X{1,2};
X x2 = {1,2}; // 此处的'='可有可⽆
X x3{1,2};
X* p = new X{1,2};
struct D : X {
 D(int x, int y) :X{x,y} { /* … */ };
};
struct S {
 int a[3];
 // 对于旧有问题的解决⽅案
 S(int x, int y, int z) :a{x,y,z} { /* … */ };
};

Last updated