使用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