当前位置:首页 C++ > 正文

详细讲解C++11引入的范围-based for循环

作者:野牛程序员:2024-04-18 14:06:52 C++阅读 2301
详细讲解C++11引入的范围-based for循环

C++11引入了范围-based for循环,这是一种简洁、直观的语法,用于遍历容器中的元素,比传统的迭代器方式更加易读和方便。

详细讲解这种语法:

  1. 传统的迭代器方式: 在C++11之前,遍历容器通常使用迭代器,代码可能像这样:

  2. std::vector<int> vec = {1, 2, 3, 4, 5};
    for (std::vector<int>::iterator it = vec.begin(); it != vec.end(); ++it) {
        std::cout << *it << std::endl;
    }
  1. 这种方式虽然有效,但是相对繁琐,需要显式地声明迭代器和使用begin()end()函数。

  2. 范围-based for循环: C++11引入了更简洁的范围-based for循环语法,使用起来更加方便:

std::vector<int> vec = {1, 2, 3, 4, 5};
for (int num : vec) {
    std::cout << num << std::endl;
}
  1. 这里是语法的要点:

    • for关键字开启循环。

    • int num声明了一个循环控制变量,它的类型是容器中元素的类型。

    • :表示范围-based for循环的开始。

    • vec是被遍历的容器。

    • 循环体中的代码会对容器中的每个元素执行一次,每次迭代都会将容器中的一个元素赋给num

  2. 范围-based for循环的优点

    • 简洁:不需要显式地声明迭代器。

    • 直观:循环中的控制变量直接代表容器中的元素。

    • 安全:不易出错,无需担心迭代器越界等问题。

总的来说,范围-based for循环是C++11中的一个重要语法特性,使得遍历容器变得更加简洁、直观和安全。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892

最新推荐

热门点击