一次添加多个元素到c ++向量 [英] adding multiple elements to c++ vector at once

查看:2875
本文介绍了一次添加多个元素到c ++向量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道是否可以更容易push_back多个元素到c ++向量

I was wondering if it is possible to push_back multiple elements to c++ vector more easily

例如

我创建5个对象

A a1;
A a2;
A a3;
A a4;
A a5;

目前,我将所有人都推回这样

Currently, i push all of them back like this

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)..等谢谢! c> c $

I was wondering if this can be done more succinctly like vector list(a1, a2, a3, a4, a5)..etc Thanks!

推荐答案

>您可以使用向量的初始化列表构造函数:

In C++11 you can use vector's initializer-list constructor:

vector<A> list {a1, a2, a3, a4, a5};

如果 C ++ 11 可以使用 iterator 为基础的构造函数,如果你创建一个临时数组,但它不如 C ++ 11 solution:

If C++11 isn't available you can use the iterator based constructor if you create a temporary array, but it's not as clean as the C++11 solution:

A tmp_list[] = {a1, a2, a3, a4, a5};
vector<A> list(tmp_list, tmp_list + 5};

这篇关于一次添加多个元素到c ++向量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆