2013-10-30 17 views
16

In C++ 11 Sie diese wunderbare Syntax tun können:concat std :: vector und Initialisiererliste

vector<int> numbers = {1, 2, 3}; 

Gibt es eine Möglichkeit, eine weitere Initialisiererliste auf einen bestehenden Vektor zu verketten?

numbers.??? ({4, 5, 6}); 

oder

std::??? (numbers, {4, 5, 6}); 

Antwort

22

Sie std::vector::insert dafür verwenden können:

#include <vector> 

vector<int> numbers = {1, 2, 3}; 
numbers.insert(numbers.end(), {4, 5, 6}); 
+0

perfekt! Vielen Dank –

6

Sie können std::vector::insert verwenden. Link to example code

#include <iostream> 
#include <vector> 
using namespace std; 

int main() { 
    vector<int> a = {1,2,3}; 
    a.insert(a.end(), {4,5,6}); 
    for(int &i : a) { 
     cout << i << " "; 
    } 
    cout << endl; 
    return 0; 
}