01.
More Effective C++ 条款28(下)条款28:灵巧(smart)指针(下) 译者注:由于我无法在文档区贴上图片(在论坛询问,结果无人回答),所以只能附上此译文的word文档。这种技术能给我们几乎所有想要的行为特性。假设我们用一个新类CasSingle来扩...查看完整版>>
More Effective C++ 条款28(下)
02.
More Effective C++ 条款28(中)条款28:灵巧(smart)指针(中) 测试灵巧指针是否为NULL目前为止我们讨论的函数能让我们建立、释放、拷贝、赋值、dereference灵巧指针。但是有一件我们做不到的事情是“发现灵巧指针为NULL”:SmartPtr<TreeNod...查看完整版>>
More Effective C++ 条款28(中)
03.
More Effective C++ 条款28(上)条款28:灵巧(smart)指针(上)灵巧指针是一种外观和行为都被设计成与内建指针相类似的对象,不过它能提供更多的功能。它们有许多应用的领域,包括资源管理(参见条款9、10、25和31)和重复代码任务的自动化(参见...查看完整版>>
More Effective C++ 条款28(上)
04.
More Effective C++ 条款25技巧本书涉及的大多数内容都是编程的指导准则。这些准则虽是重要的,但是程序员不能单靠准则生活。有一个很早以前的卡通片叫做“菲利猫”(Felix the Cat), 菲利猫无论何时遇到困难,它都会拿它的trick包。如果一个...查看完整版>>
More Effective C++ 条款25
05.
More Effective C++ 条款24条款24:理解虚拟函数、多继承、虚基类和RTTI所需的代价此文包含一些图片,无法贴到文档区,所以我把word文档压成zip文件放在了文件交流区,请下载阅读,C++编译器们必须实现语言的每一个特性。这些实现的细节当然是...查看完整版>>
More Effective C++ 条款24
06.
More Effective C++ 条款23条款23:考虑变更程序库程序库的设计就是一个折衷的过程。理想的程序库应该是短小的、快速的、强大的、灵活的、可扩展的、直观的、普遍适用的、具有良好的支持、没有使用约束、没有错误的。这也是不存在的。为尺寸和...查看完整版>>
More Effective C++ 条款23
07.
More Effective C++ 条款22条款22:考虑用运算符的赋值形式(op=)取代其单独形式(op)大多数程序员认为如果他们能这样写代码:x = x + y; x = x - y;那他们也能这样写:x += y; x -= y;如果x和y是...查看完整版>>
More Effective C++ 条款22
08.
More Effective C++ 条款21条款21:通过重载避免隐式类型转换以下是一段代码,如果没有什么不寻常的原因,实在看不出什么东西:class UPInt { // unlimited precisionpublic: ...查看完整版>>
More Effective C++ 条款21
09.
More Effective C++ 条款20条款20:协助完成返回值优化一个返回对象的函数很难有较高的效率,因为传值返回会导致调用对象内的构造和析构函数(参见条款19),这种调用是不能避免的。问题很简单:一个函数要么为了保证正确的行为而返回对象要么就...查看完整版>>
More Effective C++ 条款20
10.
More Effective C++ 条款19条款19:理解临时对象的来源当程序员之间进行交谈时,他们经常把仅仅需要一小段时间的变量称为临时变量。例如在下面这段swap(交换)例程里:template<class T>void swap(T& object1, T& object2){ T t...查看完整版>>
More Effective C++ 条款19
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。