initializer_list是一个模板类,可能你已经用过它了但不知道而已,比如下面的代码就用了
#include <iostream>
#include <vector>int main() {std::vector<int> vc({ 1,2,3,4 }); //这里调用了构造函数,实参为{1,2,3,4}return 0;
}
std::vector的内部实现就使用了initializer_list
initializer_list类成员变量:
#include <iostream>using namespace std;
void print(initializer_list<int> list) {for (auto it = list.begin(); it != list.end(); ++it)cout << *it << " ";cout << endl;
}int main() {print({ 1,2,3,4,5,6,7 });return 0;
}
参考文献
C++11 initializer_list(列表初始化容器 {}初始化)_ItaLink-CSDN博客_initializer_list