more effective C++
极致 for 简单
贵在坚持
展开
-
chapter4效率
大纲: 1、懒惰计算法 2、过度热情计算法 3、临时对象来源以及消解临时对象的产生 懒惰计算法(延迟策略) 适用于总要进行某些计算,但不需要(全部)计算结果 适用于所有语言,并不是C++独有的特性,由于C++良好的封装特性,可以使用懒惰计算法代替热情计算法(正常)而不影响用户接口使用。 situation: 若非必要,建议使用引用计数 构造对象时,尤其是使用拷贝构造函数,如果对象不涉及修改操作...原创 2020-01-02 11:21:35 · 95 阅读 · 0 评论 -
chapter3 异常
大纲: 1、普通函数异常发生,防止局部资源泄漏 2、构造函数异常发生,防止局部资源泄漏 3、禁止析构函数发生的异常传递到调用者 1、普通函数异常发生,防止局部资源泄漏 异常处理机制: 没有任何的异常捕获机制,将导致程序的控制权到调用者上,原有程序逻辑将不会被执行。相反,如果有异常捕获机制,我们就可以控制程序的执行逻辑。 局部资源,这里指代指针所指向堆资源。 解决方法: 用对象代替指针,对象的析构函...原创 2019-12-30 11:22:19 · 121 阅读 · 0 评论 -
More effective C++之基础议题(chapter1)
大纲: 1、指针和引用 2、类型转换 3、数组与多态的不可混用 4、默认构造函数 指针和引用 相同点: 间接地来使用对象 异同点: 指针可以指向空对象 引用必须指向非空对象,要求做初始化 可以改变指针指向,不可改变引用指向 抉择: 重载运算符、必须指向非空对象、不想改变其指向,使用引用;实际上,大多数的场景,我们需要改变指向,相对而言,指针可能适用的场景更多。 此外,关于使用指针、引用的效率问题:...原创 2019-12-25 09:49:47 · 167 阅读 · 0 评论