国外网站设计欣赏分析,五大跨境电商平台对比分析,自己动手建设网站过程,网站应用网站开发范围for语句基本形式#xff1a;
for(声明变量:序列容器)
{循环执行语句;
}
其中#xff0c;“序列容器”是指花括号括起来的初始值列表、数组、vector或者string等类型的对象#xff0c;主要特点是拥有能返回迭代器的 begin() 和 end() 成员;
“声明变量”是一个类似声明…范围for语句基本形式
for(声明变量:序列容器)
{循环执行语句;
}
其中“序列容器”是指花括号括起来的初始值列表、数组、vector或者string等类型的对象主要特点是拥有能返回迭代器的 begin() 和 end() 成员;
“声明变量”是一个类似声明的语句变量类型 变量名不过该变量类型有一个要求序列中的每个元素都能转换成该类型。一般使用 auto 类型说明符来自动选择合适的类型。另外如果要对序列中的元素执行写操作这个变量需要声明成引用类型如果只需要读的时候可以声明成const 。
一般使用如下比如将其中元素翻倍
vectorint vctIntNum {1,2,3,4,5};
for(auto w : vctIntNum)
{w * 2;
}
范围for语句的定义来源于传统for语句
for(auto beg v.begin(),end v.end(); beg ! end; beg)
{变量声明类型 r *beg;循环操作;
} 因为范围for语句在最开始的初始化语句中记录了该序列的end()因此如果一旦在该序列添加或者删除元素end函数的值就可能变得无效了。因此使用迭代器或者范围for语句进行循环结构的编写时尽量避免添加或者删除其中的元素。