C++中的广义集合于for范围访问

在C++11中可以通过for在范围循环中访问广义集合

如:
std::vetcor v={1,2,3};
int a[4] {1,2,3,4};
std::array<int,4>a2 {1,2,3,4};
.....

以上的都可以由for循环访问
其语法为:for(元素名变量:广义集合){循环体}
类似于Python中的 for X in Y:

让我们来看一个具体的例子(在调试这个例子前请确认你的编译器支持C++11):

#include <bits/stdc++.h>

using namespace std;

int main(){

  vector<int> s={1,2,3,4,5,6};
  for(auto i:s){
    cout<<i<<' ';//遍历输出s里的值
  }

  for(auto& i:s){
    i= 2*i;//对从s里取出的的值翻倍计算
    cout<<i<<' ';
  }
  
  return 0;

}
posted @ 2021-02-22 21:52  Evan_Lai  阅读(74)  评论(0编辑  收藏  举报