Effective C 中文版第三版 高清PDF总结.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Effective C 中文版第三版 高清PDF总结

Effective C++阅读笔记Effective C++阅读笔记1原则3:尽可能使用const4原则5:了解C++默默编写并调用哪些函数6原则6:若不想使用编译器自动生成的函数,就应该明确拒绝8原则7:为多态基类声明virtual析构函数11原则8:别让异常逃离析构函数15原则9:绝不在构造和析构过程中调用virtual函数16原则10:令operator=返回一个reference to *this19原则11:在operator=中处理“自我赋值”19原则12:复制对象时勿忘其每一个成分21原则13:以对象管理资源22原则14:在资源管理类中小心COPYING行为24原则15:在资源管理类中提供对原始资源的访问25原则16:成对使用new和delete时要采用相同形式27原则17:以独立语句将newed对象置入智能指针28原则18:让接口容易被正确使用,不易被误用29原则19:设计class犹如设计type30原则20:宁以引用传递代替值传递31原则21:必须返回对象时,别妄想返回其引用32原则22:将成员变量声明为private33原则23:宁以非member、非friend替换member函数34原则24:若所有参数皆需要类型转换,请为此采用非member函数35原则25:考虑写出一个不抛出异常的swap函数37原则26:尽可能延后变量定义式的出现时间39原则27:尽量少做类型转换动作40原则28:避免返回handles指向对象的内部成分43原则29:为“异常安全”而努力是值得的45原则30:透彻了解inline(内联)的里里外外48原则31:将文件间的变异依存关系降至最低50原则32:确定你的public继承塑造出了IS-A关系53条款33:避免屏蔽继承而来的名字54原则34:区分接口继承和实现继承55原则35:考虑virtual函数以外的其他选择57原则36:决不能重新定义继承而来的非virtual函数60原则37:绝不重新定义继承而来的缺省参数值62原则38:通过复合塑造出HAS-A关系或者根据某物实现出来63原则39:明知而审慎地使用PRIVATE继承64原则40:明智而审慎地使用多重继承69原则41:了解隐式接口和编译期多态71原则42:了解typename的双重意义72原则43:学习处理模版化基类内的名称74原则44:将与参数无关的代码抽离templates76原则45:运用成员函数模版接受所有兼容类型78原则46:需要类型转换时请为模版定义非成员函数80原则47:请使用traits classes表现类型信息82原则48:认识template元编程85原则49:了解new-handler的行为87原则50:了解new和delete的合理替换时机90条款51:编写new和delete时需固守常规92原则52:写了placement new也要写placement delete94原则54:不要忽视编译器的警告95原则54:让自己熟悉包括TR1在内的标准程序库96原则55:让自己熟悉Boost97本来是写在百度空间的,但是不知道咋回事百度博客中图片看不到了,所以百度博客的不稳定性可见一斑。于是我决定将我的领会和感受写在自己的云盘里面。虽好也弄个目录啥的,最后再整车成PDF格式的。这个标准我就参考我研究生期间论文的格式吧。原则3:尽可能使用const《Effective C++》里面第3条原则是尽量使用const。其原因是防止无意中更改而本来不应该更改的变量。本条款也提到const成员函数的重要性,原因之一就是只有const函数才能用来操纵const对象。而所谓const对象就像下图所示的这样:有的时候会遇到在const函数中更改非const成员变量的情况,这个时候就要用到mutable关键字了。如果一个成员变量被mutable修饰,那么它在const函数中仍然可以被修改,但是前提是该成员变量是非const成员。还有一种情况就是为了防止代码重复,比如两个函数实现了同样的功能只是类型不同而已,这样就会导致两段几乎相同的代码段,这无疑会增加编译时间、维护和代码膨胀等风险。在本原则的有关叙述中,作者采用了强制类型转换来解决之,虽然作者本身在大多数情况下并不提倡做法。为了给用户一个一目了然的接口,一看就知道那些成员函数可以操纵const对象而哪些不能,作者建议在类中明确将那些不改变对象的成员函数声明为const函数,虽然const成员函数可以使用非const成员变量,但是遵守这一原则会给客户带来极大的便利。因为const成员函数不更改对象,这就防止了由于误操作而带来的问题,因为最好用非const成员函数去调用const的实现,说白了就是直接return这个const成员函数,只不过需要对作为这个return的表达式

文档评论(0)

wnqwwy20 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档