泸州网站建设报价,优秀网页设计作品,数字域名做网站,泉州网站排名在C98中#xff0c;不同的STL容器和C风格数组的遍历方式各不相同#xff0c;写法也不统一#xff0c;而且不够简洁。而C11基于范围的for循环可以简洁并且统一的方式遍历STL容器和C风格数组。
在介绍for循环新的语法之前#xff0c;简单来看一下for循环之前遍历STL容器的例…在C98中不同的STL容器和C风格数组的遍历方式各不相同写法也不统一而且不够简洁。而C11基于范围的for循环可以简洁并且统一的方式遍历STL容器和C风格数组。
在介绍for循环新的语法之前简单来看一下for循环之前遍历STL容器的例子
#includeiostream
#includevectorint main()
{std::vectorint vec { 1,6,9,8,5,4,11 };for (auto it vec.begin(); it ! vec.end(); it){std::cout (*it) ;}return 0;
}
我们在遍历的过程中需要给出容器的两端:开头(begin)和结尾(end)但它不是基于范围来遍历的。在基于范围的for循环中不需要给出开头和结尾的迭代器直接抽取容器中的元素进行计算使用这种方法可以让编码更简单。
C98中for循环的语法格式:
for(init;expression;update)
{//TODO(循环体内容)
}
注意:init指声明初始化的遍历的次数expression限制初始值的数值update更新初始值也就是循环次数的累加。 C11的for循环的语法格式:
for(declaration : expression)
{//TODO(循环体)
}
注意:在上面的语法格式中 declaration 表示遍历声明在遍历过程中当前被遍历到的元素会被存储到声明的变量中。expression 是要遍历的对象它可以是表达式、容器、数组、初始化列表等。 推荐一个零声学院项目课个人觉得老师讲得不错分享给大家 零声白金学习卡含基础架构/高性能存储/golang云原生/音视频/Linux内核 https://xxetb.xet.tech/s/3Zqhgt