使用C ++ STL中的不同方式创建和初始化向量
向量是什么?
向量是C++STL中的一个容器,用于表示数组,并且其大小可以更改。
阅读更多:C++STL矢量
以下是使用它们的不同方法,我们可以在C++STL中创建和初始化向量,
1)创建一个空向量并通过推入值进行初始化
//创建一个空向量并通过推入值进行初始化 #include <iostream> #include <vector> using namespace std; int main(){ //向量声明 vector<int> v1; //推动元素 v1.push_back(10); v1.push_back(20); v1.push_back(30); v1.push_back(40); v1.push_back(50); //打印矢量元素 //创建迭代器以访问元素 vector<int>::iterator it; cout << "Vector v1 elements are: "; for (it = v1.begin(); it != v1.end(); it++) cout << *it << " "; cout << endl; return 0; }
输出结果
Vector v1 elements are: 10 20 30 40 50
2)通过指定大小创建向量,并使用默认值初始化元素
//创建向量 //使用默认值初始化元素 #include <iostream> #include <vector> using namespace std; int main(){ //向量声明 vector<int> v1(5, 10); //打印矢量元素 //创建迭代器以访问元素 vector<int>::iterator it; cout << "Vector v1 elements are: "; for (it = v1.begin(); it != v1.end(); it++) cout << *it << " "; cout << endl; return 0; }
输出结果
Vector v1 elements are: 10 10 10 10 10
3)创建向量并将其初始化为数组
//创建一个向量并将其初始化为数组 #include <iostream> #include <vector> using namespace std; int main(){ //向量声明 vector<int> v1{ 10, 20, 30, 40, 50 }; //打印矢量元素 //创建迭代器以访问元素 vector<int>::iterator it; cout << "Vector v1 elements are: "; for (it = v1.begin(); it != v1.end(); it++) cout << *it << " "; cout << endl; return 0; }
输出结果
Vector v1 elements are: 10 20 30 40 50
4)创建向量并从数组初始化
//创建一个向量并从数组中初始化它 #include <iostream> #include <vector> using namespace std; int main(){ //数组 int arr[] = { 10, 20, 30, 40, 50 }; //向量声明 from the array //数组 size int size = sizeof(arr) / sizeof(arr[0]); vector<int> v1(arr, arr + size); //打印矢量元素 //创建迭代器以访问元素 vector<int>::iterator it; cout << "Vector v1 elements are: "; for (it = v1.begin(); it != v1.end(); it++) cout << *it << " "; cout << endl; return 0; }
输出结果
Vector v1 elements are: 10 20 30 40 50
5)创建一个向量,然后从另一个向量初始化它
//创建一个向量,然后从另一个向量初始化 #include <iostream> #include <vector> using namespace std; int main(){ //向量 vector<int> v1{ 10, 20, 30, 40, 50 }; //向量声明 from the vector vector<int> v2(v1.begin(), v1.end()); //打印矢量元素 //创建迭代器以访问元素 vector<int>::iterator it; cout << "Vector v2 elements are: "; for (it = v2.begin(); it != v2.end(); it++) cout << *it << " "; cout << endl; return 0; }
输出结果
Vector v2 elements are: 10 20 30 40 50