专栏首页C++核心准则原文翻译C++核心准则ES.73:如果没有明显的循环变量,while语句要好于for语句

C++核心准则ES.73:如果没有明显的循环变量,while语句要好于for语句

ES.73: Prefer a while-statement to a for-statement when there is no obvious loop variable

ES.73:如果没有明显的循环变量,while语句要好于for语句

Reason(原因)

Readability.

可读性

Example(示例)

int events = 0;
for (; wait_for_event(); ++events) {  // bad, confusing
    // ...
}

The "event loop" is misleading because the events counter has nothing to do with the loop condition (wait_for_event()). Better

因为event计数和循环条件(wait_for_event())没有任何关系,“event loop”实际上是一种误导。较好的写法是:

int events = 0;
while (wait_for_event()) {      // better
    ++events;
    // ...
}
Enforcement(实施建议)

Flag actions in for-initializers and for-increments that do not relate to the for-condition.

如果循环变量初始化和增量操作中的操作和循环条件没有任何关系,进行提示。

原文链接

https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es73-prefer-a-while-statement-to-a-for-statement-when-there-is-no-obvious-loop-variable

本文分享自微信公众号 - 面向对象思考(OOThinkingDalian),作者:面向对象思考

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-05-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • C++核心准则Per.19:以可以预测的方式访问内存

    Performance is very sensitive to cache performance and cache algorithms favor si...

    面向对象思考
  • C++核心准则​ES.71: 如果可以,使用范围for代替普通的for语句

    Readability. Error prevention. Efficiency.

    面向对象思考
  • C++核心准则ES.42: 使用指针时要简单且直接

    Complicated pointer manipulation is a major source of errors.

    面向对象思考
  • 14:Challenge 7(map大法好)

    总时间限制: 10000ms单个测试点时间限制: 1000ms内存限制: 262144kB描述 给一个长为N的数列,有M次操作,每次操作是以下两种之一: (1)...

    attack
  • 2017年前端开发技术栈

    最近几年,应用开发的方法论发生了翻天覆地的变化。随着微服务架构、云计算、单页应用和响应式设计的兴起和发展,在保证项目开发进度、用户体验和应用性能的同时,开发者需...

    疯狂的技术宅
  • 12.高斯消去法(1)——矩阵编程基础

    对于一阶线性方程的求解有多种方式,这里将介绍利用高斯消去法解一阶线性方程组。在介绍高斯消去法前需要对《线性代数》做一下温习,同时在代码中对于矩阵的存储做一个简...

    用户1148394
  • 2017年前端开发技术栈

    这篇文章将会介绍过去几年 JavaScript 开发方面的革命性发展。 最近几年,应用开发的方法论发生了翻天覆地的变化。随着微服务架构、云计算、单页应用和响应式...

    前朝楚水
  • python第二十九课——文件读写(复制文件)

    hankleo
  • KVM系列教程(一)安装KVM

    本实验环境采用VMware WorkStation 15及RHEL 7.3镜像部署安装。

    Weiyang
  • 提高工作效率的软件推荐

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    村雨遥

扫码关注云+社区

领取腾讯云代金券