作者:
[美] Scott Meyers
出版社: 电子工业出版社
出品方: 博文视点
副标题: 35个改善编程与设计的有效方法
原作名: More Effective C++: 35 New Ways to Improve Your Programs and Designs
译者: 侯捷
出版年: 2011-1-1
页数: 317
定价: 59.00元
装帧: 平装
丛书: 博文视点·传世经典书丛
ISBN: 9787121125706
出版社: 电子工业出版社
出品方: 博文视点
副标题: 35个改善编程与设计的有效方法
原作名: More Effective C++: 35 New Ways to Improve Your Programs and Designs
译者: 侯捷
出版年: 2011-1-1
页数: 317
定价: 59.00元
装帧: 平装
丛书: 博文视点·传世经典书丛
ISBN: 9787121125706
内容简介 · · · · · ·
本书是Scott Meyers大师Effective三部曲之一。继Effective C++之后,Scott Meyers于1996推出这本书。虽然出版年代稍嫌久远,但《More Effective C++》并没有第2版,原因是当其出版之时(1996),C++ Standard已经几乎定案,本书即依当时的标准草案而写,其与现今的C++标准规范几乎相同。而且可能变化的几个弹性之处,Meyers也都有所说明与提示。
More Effective C++(中文版)的创作者
· · · · · ·
-
侯捷 译者
作者简介 · · · · · ·
Scott Meyers
世界顶级的C++软件开发技术权威之一。他是两本畅销书Effective C++和More Effective C++的作者,以前曾经是C++ Report的专栏作家。他经常为C/C++ Users Journal和Dr. Dobb's Jour nal撰稿,也为全球范围内的客户做咨询活动。他也是Advisory Boards for NumeriX LLC和InfoCruiser公司的成员。他拥有Brown University的计算机科学博士学位。
目录 · · · · · ·
译序(侯捷)
导读(introduction)
基础议题(basics)
条款1:仔细区别 pointers 和 references
distinguish between pointers and references.
条款2:最好使用 c++ 转型操作符
· · · · · · (更多)
导读(introduction)
基础议题(basics)
条款1:仔细区别 pointers 和 references
distinguish between pointers and references.
条款2:最好使用 c++ 转型操作符
· · · · · · (更多)
译序(侯捷)
导读(introduction)
基础议题(basics)
条款1:仔细区别 pointers 和 references
distinguish between pointers and references.
条款2:最好使用 c++ 转型操作符
prefer c++-style casts.
条款3:绝对不要以多态(polymorphically)方式处理数组
never treat arrays polymorphically.
条款4:非必要不提供 default constructor
avoid gratuitous default constructors.
操作符(operators)
条款5:对定制的“类型转换函数”保持警觉
be wary of user-defined conversion functions.
条款6:区别 increment/decrement 操作符的
前置(prefix)和后置(postfix)形式
distinguish between prefix and postfix forms of increment
and decrement operators.
条款7:千万不要重载&&,和, 操作符
never overload &&, , or ,.
.条款8:了解各种不同意义的 new 和 delete
understand the different meanings of new and delete
异常(exceptions)
条款9:利用 destructors 避免泄漏资源
use destructors to prevent resource leaks.
条款10:在 constructors 内阻止资源泄漏(resource leak)
prevent resource leaks in constructors.
条款11:禁止异常(exceptions)流出 destructors 之外
prevent exceptions from leaving destructors.
条款12:了解“抛出一个 exception”与“传递一个参数”
或“调用一个虚函数”之间的差异
understand how throwing an exception differs from
passing a parameter or calling a virtual function.
条款13:以 by reference 方式捕捉 exceptions
catch exceptions by reference.
条款14:明智运用 exception specifications
use exception specifications judiciously.
条款15:了解异常处理(exception handling)的成本
understand the costs of exception handling.
效率(efficiency)
条款16:谨记 80-20 法则
remember the 80-20 rule.
条款17:考虑使用 lazy evaluation(缓式评估)
consider using lazy evaluation.
条款18:分期摊还预期的计算成本
amortize the cost of expected computations.
条款19:了解临时对象的来源
understand the origin of temporary objects.
条款20:协助完成“返回值优化(rvo)”
facilitate the return value optimization.
条款21:利用重载技术(overload)避免隐式类型转换(implict type conversions)
overload to avoid implicit type conversions.
条款22:考虑以操作符复合形式(op=)取代其独身形式(op)
consider using op= instead of stand-alone op.
条款23:考虑使用其他程序库
consider alternative libraries.
条款24:了解 virtual functions、multiple inheritance、virtual base classes、
runtime type identification 的成本
understand the costs of virtual functions, multiple inheritance,
virtual base classes, and rtti.
技术(techniques, idioms, patterns)
条款25:将 constructor 和 non-member functions 虚化
virtualizing constructors and non-member functions.
条款26:限制某个 class 所能产生的对象数量
limiting the number of objects of a class.
条款27:要求(或禁止)对象产生于 heap 之中
requiring or prohibiting heap-based objects.
条款28:smart pointers(智能指针)
条款29:reference counting(引用计数)
条款30:proxy classes(替身类、代理类)
条款31:让函数根据一个以上的对象类型来决定如何虚化
making functions virtual with respect to more than one object.
杂项讨论(miscellany)
条款32:在未来时态下发展程序
program in the future tense.
条款33:将非尾端类(non-leaf classes)设计为
抽象类(abstract classes)
make non-leaf classes abstract.
条款34:如何在同一个程序中结合 c++ 和 c
understand how to combine c++ and c in the same program.
条款35:让自己习惯于标准 c++ 语言
familiarize yourself with the language standard.
推荐读物
auto_ptr 实现代码
索引(一)(general index)
索引(二)(index of example classes,functions,and templtes)
· · · · · · (收起)
导读(introduction)
基础议题(basics)
条款1:仔细区别 pointers 和 references
distinguish between pointers and references.
条款2:最好使用 c++ 转型操作符
prefer c++-style casts.
条款3:绝对不要以多态(polymorphically)方式处理数组
never treat arrays polymorphically.
条款4:非必要不提供 default constructor
avoid gratuitous default constructors.
操作符(operators)
条款5:对定制的“类型转换函数”保持警觉
be wary of user-defined conversion functions.
条款6:区别 increment/decrement 操作符的
前置(prefix)和后置(postfix)形式
distinguish between prefix and postfix forms of increment
and decrement operators.
条款7:千万不要重载&&,和, 操作符
never overload &&, , or ,.
.条款8:了解各种不同意义的 new 和 delete
understand the different meanings of new and delete
异常(exceptions)
条款9:利用 destructors 避免泄漏资源
use destructors to prevent resource leaks.
条款10:在 constructors 内阻止资源泄漏(resource leak)
prevent resource leaks in constructors.
条款11:禁止异常(exceptions)流出 destructors 之外
prevent exceptions from leaving destructors.
条款12:了解“抛出一个 exception”与“传递一个参数”
或“调用一个虚函数”之间的差异
understand how throwing an exception differs from
passing a parameter or calling a virtual function.
条款13:以 by reference 方式捕捉 exceptions
catch exceptions by reference.
条款14:明智运用 exception specifications
use exception specifications judiciously.
条款15:了解异常处理(exception handling)的成本
understand the costs of exception handling.
效率(efficiency)
条款16:谨记 80-20 法则
remember the 80-20 rule.
条款17:考虑使用 lazy evaluation(缓式评估)
consider using lazy evaluation.
条款18:分期摊还预期的计算成本
amortize the cost of expected computations.
条款19:了解临时对象的来源
understand the origin of temporary objects.
条款20:协助完成“返回值优化(rvo)”
facilitate the return value optimization.
条款21:利用重载技术(overload)避免隐式类型转换(implict type conversions)
overload to avoid implicit type conversions.
条款22:考虑以操作符复合形式(op=)取代其独身形式(op)
consider using op= instead of stand-alone op.
条款23:考虑使用其他程序库
consider alternative libraries.
条款24:了解 virtual functions、multiple inheritance、virtual base classes、
runtime type identification 的成本
understand the costs of virtual functions, multiple inheritance,
virtual base classes, and rtti.
技术(techniques, idioms, patterns)
条款25:将 constructor 和 non-member functions 虚化
virtualizing constructors and non-member functions.
条款26:限制某个 class 所能产生的对象数量
limiting the number of objects of a class.
条款27:要求(或禁止)对象产生于 heap 之中
requiring or prohibiting heap-based objects.
条款28:smart pointers(智能指针)
条款29:reference counting(引用计数)
条款30:proxy classes(替身类、代理类)
条款31:让函数根据一个以上的对象类型来决定如何虚化
making functions virtual with respect to more than one object.
杂项讨论(miscellany)
条款32:在未来时态下发展程序
program in the future tense.
条款33:将非尾端类(non-leaf classes)设计为
抽象类(abstract classes)
make non-leaf classes abstract.
条款34:如何在同一个程序中结合 c++ 和 c
understand how to combine c++ and c in the same program.
条款35:让自己习惯于标准 c++ 语言
familiarize yourself with the language standard.
推荐读物
auto_ptr 实现代码
索引(一)(general index)
索引(二)(index of example classes,functions,and templtes)
· · · · · · (收起)
丛书信息
· · · · · ·
博文视点·传世经典书丛(共15册),
这套丛书还有
《梦断代码》《UNIX编程艺术》《Exceptional C++(中文版)》《提高C++性能的编程技术》《Essential C++ 中文版》
等
。
喜欢读"More Effective C++(中文版)"的人也喜欢的电子书 · · · · · ·
支持 Web、iPhone、iPad、Android 阅读器
喜欢读"More Effective C++(中文版)"的人也喜欢 · · · · · ·
More Effective C++(中文版)的书评 · · · · · · ( 全部 13 条 )
虽然有些过时,但仍值得拥有
本书写作于1996年,相比她的姊妹篇《Effective C++》(第一版1991年,第二版1997年,第三版2005年),本书没有后续的更新版本,距今已有十六年之遥,因而内容显得有些过时。 本书内容的技术深度相对于《Effective C++》确实如书名所说更深一层,尤其是在第五章详细演示的各种...
(展开)
读 S. Meyers 之 《More Effective C++:35个改编程与设计的有效方法》
S. Meyers, 侯捷. More Effective C++:35个改编程与设计的有效方法. ISBN: 978-7-121-12570-6 这本书的作者就是上次介绍的 S. Meyers,这本书也就是上次介绍的 Effective C++ 的续集。其实这两本书本可以写在一起,但作者还是把他认为比较“高级”的部分独立出来写了两本书。...
(展开)
延续了上一作的高质量
这本more effective c++延续了effective c++的高质量,侯捷老师的翻译同样也是很有味道。这本书从内容上来说讲的还是细致入微,给人以很不错的阅读体验,但是读过了effective c++和more effective c++之后自己越发察觉到了书本知识和编程能力之间转化的鸿沟。 这种best pract...
(展开)
> 更多书评 13篇
论坛 · · · · · ·
与刘晓伟译文相比如何? | 来自双面夜莺 | 2016-01-06 23:16:03 |
这本书的其他版本 · · · · · · ( 全部6 )
-
中国电力出版社 (2003)8.9分 652人读过
-
Addison-Wesley Professional (1996)9.0分 515人读过
-
机械工业出版社 (2006)8.8分 80人读过
-
机械工业出版社 (2007)8.9分 80人读过
在哪儿借这本书 · · · · · ·
以下书单推荐 · · · · · · ( 全部 )
- 豆瓣9分以上计算机图书 (晚安,本杰明)
- C++: From Novice to Professional (Kimmy)
- 计算机科学 (月亮)
- 程序员必读 (沨雅)
- 工作后购书目录 (张小国)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
订阅关于More Effective C++(中文版)的评论:
feed: rss 2.0
0 有用 泽锡 2022-01-29 23:15:05
一看就想睡,我真不适合计算机😅
0 有用 道满 2019-04-17 18:01:13
ME比E在设计方面更深入一点,第五章还是很有教益的
0 有用 懒猫 2018-02-27 21:22:35
C++开发必读经典。
0 有用 hao 2016-03-13 15:38:23
设计,技巧,模式上更深入,引用计数和代理等值得细读。
4 有用 duguyixiaono1 2013-08-31 22:08:26
砖家经验,能将经验写得这么有条理,老少通吃不容易啊
0 有用 无明 2023-07-04 21:38:13 上海
也许你不懂,我也不懂
0 有用 joker 2023-06-20 11:12:00 陕西
终于读完了!
0 有用 c0nc4ten4te 2023-03-23 22:33:05 广东
第一部份延续了Effective C++的开发建议风格;第二部分是几个trick;第三部份是作者自己对C++ 设计的一些思考。各有特色吧
0 有用 C++ fans 2023-02-11 11:41:46 北京
不经过大型框架型项目的设计和实现,从纸上很难体会各种巧妙的语法的精妙。
0 有用 比比波比波 2023-01-29 16:23:06 北京
虽然部分内容已经过时了,但是大部分内容仍旧是最佳实践