Effective Modern C++翻译
文章平均质量分 78
夜月风
这个作者很懒,什么都没留下…
展开
-
Effective Modern C++翻译系列之Item16
Item 16:Make const member functions thread safe.如果我们工作在数学领域,也许我们会发现用一个类来代表多项式是很方便的。在这个类中,有可能有一个函数被用来计算多项式的root,例如,当多项式等于0时的值。这样的函数将不会修改多项式,所以很自然的我们会把他声明为const:class Polynomial {public:using Ro翻译 2017-08-17 20:35:50 · 373 阅读 · 0 评论 -
Effective Modern C++翻译系列之Item2
Item 2:Understand auto type deduction如果你已经读过Item1中的模板类型推断,那么你已经知道几乎所有的你需要知道的关于auto类型推断的知识了。除了仅有的一个例外,auto类型推断就是模板类型推断。但它是如何做到的呢?模板类型推断含有模板和函数和参数,但是auto处理的东西并不包含这些。那是事实,但是却不影响。模板类型推断和auto类型推断之间有着直接翻译 2017-08-11 22:06:14 · 468 阅读 · 0 评论 -
Effective Modern C++翻译系列之Item1
当使用者在一个复杂系统上工作并且忽略其基础细节,并对于该系统的表现很满意,那么我们可以说这个系统的设计十分优良。按照这么说,c++中的模板类型推断是很成功的。很多开发者通过向模板函数传递参数得到了完全满意的结果,甚至他们中的很多人只是模糊的知道函数中的类型是如何被推断出来的。如果你是那些人中的一份子,那我有一个好消息和一个坏消息。好消息是模板类型推断是现代c++中最引人注目的特性之一auto的翻译 2017-08-10 21:56:51 · 253 阅读 · 0 评论 -
Effective Modern C++翻译系列之Item18
Item18:Use std::unique_str for exclusive-ownership resource management.当你需要一个智能指针的时候,std::unique_ptr一般是最容易用到的一种。有理由假设,在默认情况下,std::unique_ptr和原生指针有相同的大小以及大部分操作符(包括解引用操作符),它们执行完全相同的指令。这意味着你可以在存储和循环频繁发翻译 2017-08-11 22:10:03 · 362 阅读 · 0 评论 -
Effective Modern C++翻译系列之Item8
Item 8:Prefer nullptr to 0 and NULL.有一个协定:字面值0是一个int,不是一个指针。如果c++在只有指针可以被用到的地方发现了了0,它将会将0解释为一个null指针,但是这是一个备选计划。c++的主要政策是0是一个int,不是一个指针。实际上,对于NULL来说是一样的。NULL的情况中细节方面上有一些不确定因素,因为NULL的实现取决于一个integra翻译 2017-08-20 21:24:27 · 420 阅读 · 0 评论 -
Effective Modern C++翻译系列之Item7
Item7:Distinguish between() and {} when creating objects.依据你的看法,c++11中对象初始化的语法选择包含了太过繁杂导致的窘迫和令人困惑的混乱。一个全面的条例说道,初始化变量可能会用到圆括号,等号或者大括号:int x(0); //初始化表达式在圆括号里int y = 0; //初始化表达式在=后面int z{ 0 }; /翻译 2017-08-20 21:29:44 · 247 阅读 · 0 评论