遍历std::vector
时间: 2023-10-19 11:08:39 浏览: 94
你可以使用迭代器来遍历std::vector。以下是一个示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> myVector = {1, 2, 3, 4, 5};
// 使用迭代器遍历vector并打印每个元素
for (std::vector<int>::iterator it = myVector.begin(); it != myVector.end(); ++it) {
std::cout << *it << " ";
}
return 0;
}
```
这段代码首先创建了一个名为myVector的std::vector,并初始化了一些整数。然后,使用迭代器`myVector.begin()`和`myVector.end()`来遍历vector的元素。在循环中,`*it`用于访问当前迭代器指向的元素,并将其打印出来。
输出结果将是:1 2 3 4 5
相关问题
遍历 std::vector
遍历 std::vector 可以使用迭代器或者范围 for 循环。以下是两种方法的示例代码:
使用迭代器:
```c++
#include <iostream>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3, 4, 5};
// 使用迭代器遍历
for (auto it = v.begin(); it != v.end(); ++it) {
std::cout << *it << " ";
}
return 0;
}
```
使用范围 for 循环:
```c++
#include <iostream>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3, 4, 5};
// 使用范围 for 循环遍历
for (auto i : v) {
std::cout << i << " ";
}
return 0;
}
```
两种方法的输出结果都是:1 2 3 4 5
遍历std::vector<std::vector<std::string>> indexArr
遍历一个 `std::vector<std::vector<std::string>>` 结构,即二维字符串向量,通常涉及到两层循环,因为你需要遍历每个子向量中的字符串。这里是一个简单的示例,说明如何遍历:
```cpp
std::vector<std::vector<std::string>> indexArr; // 假设这是你要遍历的二维向量
// 遍历二维向量
for (size_t i = 0; i < indexArr.size(); ++i) { // 外层循环,遍历行
std::vector<std::string> row = indexArr[i]; // 获取当前行
for (size_t j = 0; j < row.size(); ++j) { // 内层循环,遍历列
std::string str = row[j]; // 获取当前元素
// 这里你可以对str执行任何操作,例如打印、处理或存储
std::cout << "Element at (" << i << ", " << j << "): " << str << std::endl;
}
}
```
阅读全文