咨询培训 著译作品关于荣耀 Bjarne Stroustrup 网络资源 九炉堂 日志联系站内搜索首页

著译作品

《Imperfect C++中文版》

Imperfect C++ : Practical Solutions for Real-Life Programming, by Matthew Wilsonl

荣耀 刘未鹏 译

www.royaloo.com

译序

千万不要被书名所误导!这是一本拥抱(而非诋毁)C++的著作。它有着独特的定位:为解决C++语言自身各种“不完美”而为现实世界中的程序员提供切合实际的解决方案。

世界上没有完美的编程语言,C++亦然。在本书中,Matthew Wilson不但为我们指出C++中诸多不完美之处,还提供了经过实践检验的应对技术和技巧,便于我们利用“不完美的C++”编写出近乎完美的代码——强建、高效、灵活、可移植、优雅的代码,而这些代码在声称为“完美的语言”中往往更难实现。

本书对给出的每一个“不完美”都进行了细致地探讨:为什么说它是一个“不完美”?对其修复的指导思想是什么?有时候只是告诫你避免做些什么,给出一些约束和建议,更多的时候则为你提供现实的解决方案,这些方案往往离不开对现代模板编程技术的使用。

书中包含有许多你未曾听过或用过的技术,有些属于作者的创新,有些则是对现有技术的精化,二者均被提升到“范式”的高度。例如:应用程序二进制接口(ABI)、垫片(Shim)、饰面(Veneer)、螺栓(Bolt-in)、区间(range)、属性(property)等。不少主题难度较大,此前为其他C++专家所忽略,探讨它们除了需要勇气外,第一手经验更是不可或缺。作为STLSoft库的主创者,Matthew在举例时,Windows API、MFC、ATL、COM以及UNIX等都是信手拈来。

除了丰富的实践、扎实的理论以及缜密的逻辑外,Matthew的文笔流畅,语言幽默,说理直接,字里行间流露出过人的自信,使得本书极具阅读趣味。

本书具有一定的阅读门槛,目标读者为中、高级职业C++程序员。书中展示的代码示例、编程技术往往在几款甚至十几款编译器上进行验证,辅以表格对其各色特性加以比较,并针对不同编译器所表现出的差异性而给出高效、可移植的解决方案——就像很多现实世界中的C++程序员应该做(而没做到)的那样。如果你正在寻找一本真材实料的“C++实战”参考书,这一本不应该让你失望。

本书中文版由我和刘未鹏先生合译。未鹏是国内C++新锐,思维敏捷,技术、文笔俱佳,我很高兴与他合作。

感谢陈冀康编辑給予的理解和支持。感谢朱艳的照料和热爱。荣珅则常常用他的小拳头乱砸书房的门,并大声地叫“爸爸”,这种干扰让我获得了必不可少的休息时间。

既有的经典名著使得C++新书问世难度加大,后来者若无过人之处就很难引起C++社群的注意,《Imperfect C++》、《C++ Common Knowledge》以及《C++ Template Metaprogramming 》等佳作一经问世便得到广泛的关注。作为译者(之一),我祝愿它们能够带给各位久违的快乐!

荣耀
2005年8月
南京师范大学
www.royaloo.com

目录

  • 1 强制设计:约束、契约和断言
  • 2 对象生命期
  • 3 资源封装
  • 4 数据封装和值类型
  • 5 对象访问模型
  • 6 域守卫类
  • 7 ABI
  • 8 跨边界的对象
  • 9 动态库
  • 10 线程
  • 11 静态对象
  • 12 优化
  • 13 基本类型
  • 14 数组和指针
  • 15 值
  • 16 关键字
  • 17 语法
  • 18 typedef
  • 19 强制
  • 20 垫片
  • 21 饰面
  • 22 螺栓
  • 23 模板构造函数
  • 24 operator bool()
  • 25 快速、非侵入性的字符串拼接
  • 26 你的地址是什么
  • 27 下标索引操作符
  • 28 增量操作符
  • 29 算术类型
  • 30 短路
  • 31 返回值生命期
  • 32 内存
  • 33 多维数组
  • 34 仿函数和区间
  • 35 属性
  • 附录A 编译器和库
  • 附录B “谦虚点儿,别骄傲”

出版信息

  • 书 号: ISBN 7-115-13684-X/TP • 4804
  • 页 数: 591
  • 开 本: 800 X 1000 1/16
  • 定 价: 75元
  • 印 数: 未知
  • 出版日期: 2005年12月
  • 出 版 社: 人民邮电出版社