专栏首页C++核心准则原文翻译C++核心准则ES.55: 尽量不造成范围检查需求​

C++核心准则ES.55: 尽量不造成范围检查需求​

ES.55: Avoid the need for range checking

ES.55: 尽量不造成范围检查需求

Reason(原因)

Constructs that cannot overflow do not overflow (and usually run faster):

无法溢出的结构不会溢出(而且通常会运行的更快)

Example(示例)

for (auto& x : v)      // print all elements of v
    cout << x << '\n';

auto p = find(v, x);   // find x in v
Enforcement(实施建议)

Look for explicit range checks and heuristically suggest alternatives.

寻找显式范围检查并且启发式建议其他选项。

原文链接

https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es55-avoid-the-need-for-range-checking

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

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

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

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

我来说两句

0 条评论
登录 后参与评论

相关文章

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

    Readability. Error prevention. Efficiency.

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

    Complicated pointer manipulation is a major source of errors.

    面向对象思考
  • C++核心准则​T.143:避免无意中编写非通用代码

    T.143: Don't write unintentionally non-generic code

    面向对象思考
  • hdu1034

    @坤的
  • 陕西师范大学第七届程序设计竞赛网络同步赛 配环境

    #include <bits/stdc++.h> using namespace std; int main() { double size[1005],...

    用户2965768
  • 基于全基因组的基因家族分析(2):SlNRAMP家族基因成员鉴定

    番茄(Solanum lycopersicum),最喜爱的蔬菜水果之一。摘录维基百科最基本的介绍,详细了解番茄的起源,自行Google。小编还是喜欢Transp...

    生信技能树
  • 单细胞技术在临床上的应用方向

    在我们错过的岁月里,我们看到NGS在临床上的应用主要是检测和诊断。近来,随着NGS技术的下沉和成熟,我们看到它开始在药物开发中得到应用。

    生信技能树jimmy
  • 虚拟主机比云主机更具优势?

    现在随着云服务器的使用范围越来越广,很多原来使用传统虚拟主机的用户都开始重新选择,使用云主机,因为云主机相对而言,性能更优、速度更快。但是虚拟主机也有自己的优势...

    静一
  • 【每日一题】用筛法求之N内的素数。

    题号:1084 题目描述 用筛法求之N内的素数。 输入 N 输出 0~N的素数 样例输入 100 样例输出 2 3 5 7 11 13 17 19 23 29 ...

    编程范 源代码公司
  • 芒果实验室,293细胞培养

    HEK293T细胞由HEK293细胞衍生而来,含有SV40 large T抗原,贴壁不牢。293T细胞表达 E1A蛋白,S40大T抗原,含有S40复制起始点与启...

    芒果先生聊生信

扫码关注云+社区

领取腾讯云代金券