vector<pair<double,pair<double,double>>>元素访问
时间: 2023-10-25 21:10:12 浏览: 103
C++ pair的用法实例详解
vector<pair<double,pair<double,double>>>是一个二维向量,它包含一个double类型的第一维元素和一个pair<double,double>类型的第二维元素。要访问其中的元素,可以使用以下方法:
1. 使用下标访问
可以使用下标操作符[]来访问vector中的元素,下标从0开始:
```cpp
vector<pair<double,pair<double,double>>> vec;
// 添加元素
vec.push_back(make_pair(1.0, make_pair(2.0, 3.0)));
vec.push_back(make_pair(4.0, make_pair(5.0, 6.0)));
// 访问元素
cout << vec[0].first << " " << vec[0].second.first << " " << vec[0].second.second << endl;
cout << vec[1].first << " " << vec[1].second.first << " " << vec[1].second.second << endl;
```
2. 使用迭代器访问
可以使用迭代器遍历vector中的元素:
```cpp
vector<pair<double,pair<double,double>>> vec;
// 添加元素
vec.push_back(make_pair(1.0, make_pair(2.0, 3.0)));
vec.push_back(make_pair(4.0, make_pair(5.0, 6.0)));
// 访问元素
for (vector<pair<double,pair<double,double>>>::iterator it = vec.begin(); it != vec.end(); ++it) {
cout << it->first << " " << it->second.first << " " << it->second.second << endl;
}
```
3. 使用范围for循环访问
可以使用C++11引入的范围for循环遍历vector中的元素:
```cpp
vector<pair<double,pair<double,double>>> vec;
// 添加元素
vec.push_back(make_pair(1.0, make_pair(2.0, 3.0)));
vec.push_back(make_pair(4.0, make_pair(5.0, 6.0)));
// 访问元素
for (auto const& elem : vec) {
cout << elem.first << " " << elem.second.first << " " << elem.second.second << endl;
}
```
以上三种方法都可以用来访问vector<pair<double,pair<double,double>>>中的元素。
阅读全文