Effective C++:改善程序与设计的55个具体做法.pdf

Effective C++:改善程序与设计的55个具体做法.pdf
 

书籍描述

编辑推荐
《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》前两个版本抓住了全世界无数程序员的目光。原因十分明显:Scott Meyers极富实践意义的C++研讨方式,描述出专家用以产出干净、正确、高效代码的经验法则和行事法则——也就是他们几乎总是做或不做的某些事。
《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》一共组织55个准则,每一条准则描述一个编写出更好的C++的方式、每一个条款的背后都有具体范例支撑。第三版有一半以上的篇幅是崭新内容,包括讨沦资源管理和模块(templates)运用的两个新章。为反映出现代设计考虑,对第二版论题做了广泛的修订,包括异常(exceptions)、没汁模式(design patterns)和多线程(multithreading)。
高效的Classes、functions、templates和inheritance hierarchies(继承体系)方面的专家级指导。
崭新的“TR1”标准程序库功能应用,以及与既有标准程序库组件的比较。
洞察C++和其他语言(例如Java、C#、C)之间的不同。此举有助于那些来自其他语言阵营的开发人员消化吸收C++式的各种解法。

媒体推荐
“每一位C++专业人士都需要这样一本《Effective C++》。对每一位想要认真以C++从事开发工作的人而言,这是一本绝对必须阅读的书。如果你不曾读过《Effective C++》却认为自己对C++无所不晓,恐怕你得三思。”
  ——steve Schirripa,Google软件工程师
C++和C++社群已经在最近15年内成长了起来,《Effective C++》第三版反映出这个事实。本书清晰而严谨的风格显示出Scott对于重要知识的深刻理解和特殊掌握能力。”
  ——Gerhard Kreuzer,Siemens AG研发工程师

作者简介
作者:(美国)梅耶(Scott Meyers) 译者:侯捷

Scott Meyers是全世界最知名的C++软件开发专家之一。他是畅销书《Effective C++》系列(Effective C++,More Effective C++,Effective STL)的作者,又是创新产品《Effective C++CD》的设计者和作者,也是Addison-wesley的“Effective Software Development Series”顾问编辑,以及《Software Development》杂志咨询板成员。他也为若干新公司的技术咨询板提供服务。Meyers于1993年自Brown大学获得计算机博土学位。
侯捷,是计算机技术书籍的作家、泽者、书评人。著有《深入浅出MFC》、《多犁与虚拟》、《STL源码剖析》、《无责任书评》三卷,泽有众多脍炙人口的高阶技术书籍,包括Meyers所著的“Effective C++”系列。侯捷兼任教职于元智大学、同济大学、南京大学。

目录
译序
中英简繁术语对照
目录
序言
致谢
导读
1.让自己习惯C++
条款01:视C++为一个语言联邦
条款02:尽量以consts,enum,inline替换#define
条款03:尽可能使用const
条款04:确定对象被使用前已先被初始化
2.构造/析构/赋值运算
条款05:了解C++默默编写并调用哪些函数
条款06:若不想使用编译器自动生成的函数,就该明确拒绝
条款07:为多态基类声明virtual析构函数
条款08:别让异常逃离析构函数
条款09:绝不在构造和析构过程中调用virtual函数
条款10:令operator=返回一个refereglce to this
条款11:在operator=中处理“自我赋值
条款12:复制对象时勿忘其每一个成分
3.资源管理
条款13:以对象管理资源
条款14:在资源管理类中小心copying行为
条款15:在资源管理类中提供对原始资源的访问
条款16:成对使用new和delete时要采取相同形式
条款17:以独立语句将newed对象置入智能指针
4.设计与声明
条款18:让接口容易被正确使用,不易被误用
条款19:设计class犹如设计type
条款20:宁以pass-by-reference-to-const替换pass-by-value
条款21:必须返回对象时,别妄想返回其reference
条款22:将成员变量声明为private
条款23:宁以non-member、non-friend替换member函数
条款24:若所有参数皆需类型转换,请为此采用non-member函数
条款25:考虑写出一个不抛异常的swap函数
5.实现
条款26:尽可能延后变量定义式的出现时间
条款27:尽量少做转型动作
条款28:避免返回handles指向对象内部成分
条款29:为“异常安全”而努力是值得的
条款30:透彻了解inlining的里里外外
条款31:将文件间的编译依存关系降至最低
6.继承与面向对象设计
条款32:确定你的public继承塑模出is-a关系
条款33:避免遮掩继承而来的名称
条款34:区分接口继承和实现继承
条款35:考虑、virtual函数以外的其他选择
条款36:绝不重新定义继承而来的non-virtual函数
条款37:绝不重新定义继承而来的缺省参数值
条款38:通过复合塑模出has-a或根据某物实现出
条款39:明智而审慎地使用private继承
条款40:明智而审慎地使用多重继承
7.模板与泛型编程
条款41:了解隐式接口和编译期多态
条款42:了解typename的双重意义
条款43:学习处理模板化基类内的名称
条款44:将与参数无关的代码抽离templates
条款45:运用成员函数模板接受所有兼容类型
条款46:需要类型转换时请为模板定义非成员函数
条款47:请使用打aits classes表现类型信息
条款48:认识template元编程
8.定制new和delete
条款49:了解new-handler的行为
条款50:了解new和delete的合理替换时机
条款51:编写new和delete时需固守常规
条款52:写了placement new也要写placement delete
9.杂项讨论
条款53:不要轻忽编译器的警告
条款54:让自己熟悉包括TR1在内的标准程序库
条款55:让自己熟悉Boost
A 本书之外
B 新旧版条款对照
索引

序言
1991年我写下《Effective C++》第一版。1997年撰写第二版时我更新了许多重要内容,但为了不让熟悉第一版的读者感到困惑,我竭尽所能保留原始结构:原先50个条款中的48个标题基本没变。如果把书籍视为一栋房屋,第二版只是更换地毯灯饰,重新粉刷一遍而已。
到了第三版,修缮工作进一步深入壁骨墙筋(好几次我甚至希望能够翻新地基)。1991年起C++世界经历了巨大变革,而本书目标——在一本小而有趣的书中确认最重要的一些C++编程准则——却已不再能够由15年前建立的那些条款体现出来。“C++程序员拥有C背景”这句话在1991年是个合理假设,如今C++程序员却很可能来自Java或C≠#阵营。继承(inheritance)和面向对象编程(object-Oriented programming)在1991年对大多数程序员都很新鲜,如今程序员已经建立良好概念,异常(exceptions)、模板(templates)和泛型编程(generic programming)才是需要更多引导的领域。1991年没人听过所谓设计模式(designpattems),如今少了它很难讨论软件系统。1991年C++正式标准才刚要上路,如今C++标准规范已经8岁,新版规范蓄势待发。

文摘
插图:

Effective C++:改善程序与设计的55个具体做法

内容简介
《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》内容简介:有人说C++程序员可以分为两类,读过Effective C++的和没读过的。世界项级C++大师scott Meyers成名之作的第三版的确当得起这样的评价。当您读过《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》之后,就获得了迅速提升自己C++功力的一个契机。
在国际上,《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》所引起的反响,波及整个计算机技术的出版领域,余音至今未绝。几乎在所有C++书籍的推荐名单上,《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》都会位于前三名。作者高超的技术把握力、独特的视角、诙谐轻松的写作风格、独具匠心的内容组织,都受到极大的推崇和仿效。这种奇特的现象,只能解释为人们对这《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》衷心的赞美和推崇。
这《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》不是读完一遍就可以束之高阁的快餐读物,也不是用以解决手边问题的参考手册,而是需要您去反复阅读体会的,C++是真正程序员的语言,背后有着精深的思想与无以伦比的表达能力,这使得它具有类似宗教般的魅力。希望这《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》能够帮您跨越C++的重重险阻,领略高处才有的壮美风光,做一个成功而快乐的C++程序员。

购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多