C++-----基于范围的for循环
Posted 云灬沙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++-----基于范围的for循环相关的知识,希望对你有一定的参考价值。
基于范围的for循环是为用于STL而设计的,
double prices[5]={4.99,10.99,6.87,7.99,8.49};
for(double x:prices)
cout<<x<<std::endl;
在这种for循环中,括号内的代码生命一个类型与容器存储的内容相同的变量,然后指出了容器的名称。
for(auto x:books) ShowReview(x);
根据book的类型(Vector’<Review’>),编译器将推断出x的类型为Review,而循环将依次将books中的每个Review对象传递给ShowReview()
基于范围的for循环可以修改容器的名称,诀窍是指定一个引用参数。
假设有如下函数:
void InflateReview(Review &r){r.rating++;}
可使用如下循环对books的每个元素执行该函数:
for(auto &x:books) InflateReview(x);
C++11
以上是关于C++-----基于范围的for循环的主要内容,如果未能解决你的问题,请参考以下文章