资料来源: https://www.geeksforgeeks.org/initialize-a-vector-in-cpp-different-ways/

push_back初始化法

  1. // CPP program to create an empty vector
  2. // and push values one by one.
  3. #include <bits/stdc++.h>
  4. using namespace std;
  5. int main()
  6. {
  7. // Create an empty vector
  8. vector<int> vect;
  9. vect.push_back(10);
  10. vect.push_back(20);
  11. vect.push_back(30);
  12. for (int x : vect)
  13. cout << x << " ";
  14. return 0;
  15. }

初始值初始空间法

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

初始值法

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

拷贝其它Vector

// 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; 
}

迭代器拷贝其它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; 
}