C++核心准则​Pro.lifetime:生命周期安全群组

面向对象思考

共 1842字,需浏览 4分钟

 ·

2020-11-10 17:31

Pro.lifetime: Lifetime safety profile

Pro.lifetime:生命周期安全群组


Accessing through a pointer that doesn't point to anything is a major source of errors, and very hard to avoid in many traditional C or C++ styles of programming. For example, a pointer might be uninitialized, the nullptr, point beyond the range of an array, or to a deleted object.

通过没有指向任何内容的指针进行访问是错误的主要来源之一,这在许多传统的C或C ++编程风格中很难避免。例如,指针可能未初始化,空指针,指向数组范围之外或指向已删除的对象的指针。


See the current design specification here.

请参阅下面的最新设计规范。

https://github.com/isocpp/CppCoreGuidelines/blob/master/docs/Lifetime.pdf


Lifetime safety profile summary(声明周期安全群组摘要):

  • Lifetime.1: Don't dereference a possibly invalid pointer: detect or avoid.

  • Lifetime.1:不要取消引用可能无效的指针:检测或避免


Impact(影响)

Once completely enforced through a combination of style rules, static analysis, and library support, this profile

通过结合样式规则,静态分析和库支持彻底实施后,此规则群组

  • eliminates one of the major sources of nasty errors in C++

    消除了C ++中令人讨厌的错误的主要来源之一

  • eliminates a major source of potential security violations

    消除了潜在的安全违反的主要根源

  • improves performance by eliminating redundant "paranoia" checks

    通过消除多余的“偏执”检查来提高性能

  • increases confidence in correctness of code

    增加对代码正确性的信心

  • avoids undefined behavior by enforcing a key C++ language rule

    通过执行关键的C ++语言规则避免未定义的行为


原文链接

https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#prolifetime-lifetime-safety-profile


新书介绍

《实战Python设计模式》是作者最近出版的新书,拜托多多关注!

本书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。这样一方面可以使读者了解真实的软件开发工作中每个设计模式的运用场景和想要解决的问题;另一方面通过对这些问题的解决过程进行说明,让读者明白在编写代码时如何判断使用设计模式的利弊,并合理运用设计模式。

对设计模式感兴趣而且希望随学随用的读者通过本书可以快速跨越从理解到运用的门槛;希望学习Python GUI 编程的读者可以将本书中的示例作为设计和开发的参考;使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础,迅速构建自己的系统架构。




觉得本文有帮助?请分享给更多人。

关注微信公众号【面向对象思考】轻松学习每一天!

面向对象开发,面向对象思考!



浏览 17
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报