开pair类型的数组和开一个vector元素类型为pair类型,有什么区别?
时间: 2023-03-01 17:17:47 浏览: 68
开pair类型的数组是指创建一个数组,其中的每个元素都是一个pair类型,而开一个vector元素类型为pair类型则是指创建一个vector,其中的每个元素都是一个pair类型。两者最主要的区别在于,数组是一种固定长度的容器,而vector是一种可变长度的容器。
相关问题
定义一个可变长的pair数组
可以使用C++的STL库中的vector容器来定义一个可变长的pair数组。示例如下:
```c++
#include <iostream>
#include <vector>
#include <utility> //头文件中包含了pair类型
using namespace std;
int main() {
vector<pair<int, string>> vec; //定义一个可变长的pair数组
//往数组中添加元素
vec.push_back(make_pair(1, "hello"));
vec.push_back(make_pair(2, "world"));
vec.push_back(make_pair(3, "!"));
//遍历数组并输出
for (int i = 0; i < vec.size(); i++) {
cout << vec[i].first << " " << vec[i].second << endl;
}
return 0;
}
```
输出结果为:
```
1 hello
2 world
3 !
```
vector<pair<int,int>> 是二维数组还是一维数组
vector<pair<int,int>> 是一维数组,它是一个 vector 容器,其中每个元素都是一个 pair<int,int> 类型的对象。每个 pair 对象表示一个二元组,相当于一个长度为 2 的一维数组。因此,vector<pair<int,int>> 可以看作一个长度可变的一维数组,其中每个元素都是长度为 2 的一维数组。