学科分类
目录
C++基础

基于范围的for语句

如果想对一组序列中的每个对象进行操作,可以使用C++11中提供的基于范围的for语句。该语句遍历序列中每个元素并对序列中的每个值进行某种操作,其语法形式如下所示:

for(declaration: expression)
  statement

其中expression是一个对象,表示一个序列,declaration定义一个变量,该变量将被用于访问序列中的元素,每次迭代,declaration将被初始化为expression中的下一个元素值。下述代码使用范围for语句操作输出string对象中的每一个字符,代码如下所示:

string str("Hello World!");
for (auto c : str)
  cout << c << endl;

上述代码中,for循环中将变量c和str对象联系在一起,c是通过auto声明的变量,类型为char,其内容为从str中取到的字符。通过范围for结构,变量c每次从str中获取一个字符完成输出。

点击此处
隐藏目录