C++ 使用范围for循环遍历std::vector

在 C++11 及其之后的版本中,我们可以使用更加简洁的范围for循环 (range-based for loop) 来遍历 std::vector 容器中的元素,而无需使用传统的迭代器。

**代码示例:**cpp#include #include

int main() { std::vector vec {1, 2, 3, 4, 5};

// 使用范围for循环遍历vector中的元素    for (const auto& element : vec) {        std::cout << element << ' ';    }

return 0;}

代码解释:

  • for (const auto& element : vec) : 声明一个范围for循环,其中: * element: 是一个迭代变量,它在每次循环迭代中被赋值为向量中的一个元素。 * const auto&: 使用 auto 自动推导出元素类型,使用 const 保证不会修改元素的值,使用引用 & 避免对每个元素进行拷贝,提高效率。 * vec: 要遍历的 std::vector 容器。* 循环体会对 vec 中的每一个元素执行一次,并将当前元素赋值给 element

优点:

  • 语法简洁,可读性强。* 无需使用迭代器,避免了迭代器失效的问题。* 可以自动遍历整个容器,无需手动指定循环终止条件。

注意事项:

  • 迭代变量 element 的类型通常使用 auto 推导,并在范围for循环中使用引用类型 (const auto&) 来避免对每个元素进行拷贝。

希望以上解释能够帮助您理解如何使用范围for循环遍历 std::vector 容器!

C++ 使用范围for循环遍历std::vector

原文地址: https://www.cveoy.top/t/topic/b98d 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录