C++核心准则​NL.11:使字面值可读

2020-12-15 14:59:02 浏览数 (1)

NL.11: Make literals readable

NL.11:使字面值可读

Reason(原因)

Readability.

可读性。

Example(示例)

Use digit separators to avoid long strings of digits

使用数字分隔符避免数字过长

代码语言:javascript复制
auto c = 299'792'458; // m/s2
auto q2 = 0b0000'1111'0000'0000;
auto ss_number = 123'456'7890;
Example(示例)

Use literal suffixes where clarification is needed

在需要说明时使用字面值后缀

代码语言:javascript复制
auto hello = "Hello!"s; // a std::string
auto world = "world";   // a C-style string
auto interval = 100ms;  // using <chrono>
Note(注意)

Literals should not be sprinkled all over the code as "magic constants", but it is still a good idea to make them readable where they are defined. It is easy to make a typo in a long string of integers.

不应将字面值以“魔术常数”的形式散布在整个代码中,即使这样做了,使它们在定义的地方可读仍是一个好主意。用一长串整数输入错字很容易。

Enforcement(实施建议)

Flag long digit sequences. The trouble is to define "long"; maybe 7.

标记长数字序列。麻烦在于如何定义“长”;也许长于7可以作为一个标准。

原文链接

https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#nl11-make-literals-readable

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

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

0 人点赞