Range for statement

一、range for语句可以用来干啥?

range for语句用于遍历序列。这些序列有具有迭代器成员的容器、内置数组,初始化列表三种情况。

二、如何使用

C++11后开始支持范围for语句,他是一种通用的语法,比如说python中的:

for iterating_var in sequence:
   statements(s)

相应的C++语法为:

for(容器元素类型 容器中元素临时变量:容器)
{
    statements;
}   

2.1 初始化列表遍历

for(auto ele:{1,2,3,5,3,6,2})
{
    cout<<ele<<endl;
}

2.2 容器遍历

set<int> iset(1,2,3,3,434,3,22,2);
for(auto ele:iset)//推荐用这种方式
{
    cout<<ele<<endl;
}

for(set<int>::value_type ee:iset)
{
    cout<<ee<<endl;
}

2.3 内置数组遍历

int arr[]={1,2,3,4,44443,2,43};
for(auto r:arr)
{
    cout<<r<<endl;
}

2.4 注意事项

  • 如果要遍历改变每一个值,请使用auto &r定义一个引用
  • 遍历过程中不允许改变元素的个数,因为迭代器失效了
发布了55 篇原创文章 · 获赞 75 · 访问量 4万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 精致技术 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览