Initialize a vector in C++ (6 different ways)

Following are different ways to create and initialize a vector in C++ STL
 

1. Initializing by pushing values one by one :

 




// CPP program to create an empty vector
// and push values one by one.
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    // Create an empty vector
    vector<int> vect;
 
    vect.push_back(10);
    vect.push_back(20);
    vect.push_back(30);
 
    for (int x : vect)
        cout << x << " ";
 
    return 0;
}

Output: 
 

10 20 30

 



2. Specifying size and initializing all values :

 




// CPP program to create an empty vector
// and push values one by one.
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    int n = 3;
 
    // Create a vector of size n with
    // all values as 10.
    vector<int> vect(n, 10);
 
    for (int x : vect)
        cout << x << " ";
 
    return 0;
}

Output: 
 

10 10 10

 

3. Initializing like arrays :

 




// CPP program to initialize a vector like
// an array.
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector<int> vect{ 10, 20, 30 };
 
    for (int x : vect)
        cout << x << " ";
 
    return 0;
}

Output: 
 

10 20 30

 



4. Initializing from an array :

 




// CPP program to initialize a vector from
// an array.
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    int arr[] = { 10, 20, 30 };
    int n = sizeof(arr) / sizeof(arr[0]);
 
    vector<int> vect(arr, arr + n);
 
    for (int x : vect)
        cout << x << " ";
 
    return 0;
}

Output: 
 

10 20 30

 

5. Initializing from another vector :

 




// CPP program to initialize a vector from
// another vector.
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector<int> vect1{ 10, 20, 30 };
 
    vector<int> vect2(vect1.begin(), vect1.end());
 
    for (int x : vect2)
        cout << x << " ";
 
    return 0;
}

Output: 
 

10 20 30

 

6. Initializing all elements with a particular value :

 




#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector<int> vect1(10);
    int value = 5;
    fill(vect1.begin(), vect1.end(), value);
    for (int x : vect1)
        cout << x << " ";
}

Output: 
 

5 5 5 5 5 5 5 5 5 5

This article is contributed by Kartik. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
 

Attention reader! Don’t stop learning now. Get hold of all the important C++ Foundation and STL concepts with the C++ Foundation and STL courses at a student-friendly price and become industry ready.

Article Tags :
C++
Practice Tags :