我想知道是否可以更容易地将多个元素推送到c ++向量
例如
我创建了5个对象
A a1;
A a2;
A a3;
A a4;
A a5;
目前,我像这样推回所有这些
vector<A> list;
list.push_back(a1);
list.push_back(a2);
list.push_back(a3);
list.push_back(a4);
list.push_back(a5);
我想知道这是否可以像矢量列表(a1,a2,a3,a4,a5)更简洁地完成..等等谢谢!
答案 0 :(得分:6)
在C++11
中,您可以使用vector
的初始化列表构造函数:
vector<A> list {a1, a2, a3, a4, a5};
如果C++11
不可用,您可以使用基于iterator
的构造函数创建临时数组,但它不像C++11
解决方案那样干净:
A tmp_list[] = {a1, a2, a3, a4, a5};
vector<A> list(tmp_list, tmp_list + 5};