-
基本类型
不必用初始化列表。int i = 1;
-
复合类型
就一个数组。int arr[10] = {1, 2, 3, 4, 5, 6, 7};
-
自定义类
自定义类型,如果想用初始化列表就要包含initializer_list头文件
vector<int> arr = {1, 2, 4, 5};
注意:
1.{}是一种类型。auto l = {1, 2, 4, 5};
2.上述这种类型是可以用在初始化列表中的。 vector<int> arr = {l, 7, 8};
又注意:在用初始化列表时最好用“= {}”这种写法,方便与构造函数区分开来。eg: myClass t = {1, "lilei"};
如果自定义类型没有使用初始化列表,那么只能使用构造函数了。eg: myClass* t = new myClass(1, "lilei");