代码简洁
C语言
for (int i = 0; i < sizeof(array) / sizeof(array[0]); ++i)
array[i] *= 2;
C++
for (auto& e : array)
e *= 2;
范围for的使用条件
- for循环迭代的范围必须是确定的
对于数组而言,就是数组中第一个元素和最后一个元素的范围;对于类而言,应该提供begin和end的方法,begin和end就是for循环迭代的范围。
注意:以下代码就有问题,因为for的范围不确定
void a(int array[])//函数传参并不把整个数组传过去而是传数组首元素地址大小
{
for(auto& e : arr)
cout<< e;
}
for (int e : array)--------本质是将arr中的元素拿出来一个之后,执行一遍for代码
for (auto e : array)
cout << e << " ";