孟岩译序
E 技术书辖市场,历来是春祉战圈。一般来说,同一个技术领域里且会杳那么
盘本、十世本、甚至盘十本):Ë位相fl:(的书籍相互撒用竞争b 其中会有一些大师之作
脱颗而出,面南背北,黄抱加身,通常还会杳后来者不断挑战,企固且跑到特色赢
得自己的一片天地-比如说在算桂与盘据结构牺辑. D.E. Knuth 的那套E 四e Art af
O呻uter p1咱阳四"的~>>一至三巷,当辑是日出东方,惟我独尊。但是他老人辜的
学生Robert Sedgewick:凭着一套更贴近2阔的"严部m菌的c>>革列,也打出了自
己的一片天节,成为1l1!要推荐到表上的首埠。就C++ 应用经验费书籍来说, Scott
Mey'*的《事时阳C++>> 称王称霸己坦事年,不过其好友Herb Sut阳也能用一本
(E缸叩阳回lC++) 在得几乎井驾齐驱的地位。嗨,这不是根正常的事吗?挂本提
书篝毕竟不是诗词歌盹e 革轼一首"明月儿时杳,把酒问青天"可且达到"盹中
秋者,自在墙西E 月后,余词恩庭"的程度,但程么可能盟章-本技术著作达到"我
世乘风归去,丑恶事捶王宇,高扯不胜寒"的境界!谁能够写出一本技术书,让同
一喃喃后来者望而却步,咀为现止,那才是大大的奇迹l
描而, fti手上这本4耻C++S阳由d 凶附件,作为C忡括唯程序库教学和
参考类书籍的定音之作,已经将这个奇班维持了三年之久。撞阳π 出版界时钟,
三年的时间几乎就是半个世纪.足p...l锤班卫一传世盟典!
1998 年C++S阳曲d 通过之后,整个C++ 杜群面临的最置迫任务,就是学习
和理解这柑桔推插在们带来的新现盘和新技术。而其中对于C++ 标准程序库的学
习需求,最为迫回。C忡第二号人物AndrewK田nig 曾是就C++ 的特点指出"语
盲世计就是程序库设计,程序库设计就是语言世计"1. C++S曲曲d 时程序库所作
的巨大扩充和明确规范,实际上即相当于对C++ 语言的能力作了全面提升与扩展,
童峰着你可且站在无量超一由专辜的肩上,将最出色的思想、设计与技术捕入囊中,
1 "La:r唱uagede国gn is lib皿y 也画gn, libr咀ryd国植n is 1m唱uage design" ,参见An曲m
k剧tig, 8arbara Moo 合著(Ruminations on C++) 第25 , 26 章标圈。
h 孟岩译序
让经过千锤百炼的精美代码成为自己软件大厦的坚实基础。可时说,对于大多盘程
序虽来说,际准C++ 辑之于"ARM 时代"之最大进步,不是语言本身,而恰恰是
标准程序库。因此,我们可U 想象当时人们时C++ 标准程序库教学费书籍的企酣,
是何等楠切!
一方面是己蛙标准化丁的成熟技术,另一方面是万众期待的眼神,我们完全杳
理由认为,历史上理由爆置一场鱼龙植杂的图书大战,它的典型过程应由是这样:
先是--批快刀手且迅雷不及掩耳蓝铃之势2推出一堆曲时匾蝠,黠后在擅长的唾骂
与期持中,大师之作斯市脱颖而出,大搞掏静,最后产生盘本经典被人传哩。后虽
偶有新作面世,但植光点点己是植搁不兴,
带而,这一幕终究世有在"C++ 悻罹程序库教学与参考书籍"喃喃内出现,时
至今日,中外技术书辖市蝠上这一领域内的书籍为盘喜事,与堆相如山的C++ 语
言教学英书籍形成鲜明对比。究其盟国,大楠有二,一是这个喃喃里的东西毕竟曲
量太重,快刀手里揣善斩乱麻,对于C++ 际准程序库这样严整而精致的日括,一
时也难目下手。更重要的原因则恐怕是1回9 年8 月盯ñeC忡S阳由nH曲my) 问
世,直如横刀立马,震慑天下。自推出之日起至今,本书在所有关于C++ 际准程
序库的评论与推荐列表上,抽终高居曹首,在Amazo咀的销量排行睛上名列所有
C++ 相关书籍之最前列。作者仅凭一书而为天下捆,成为号召力可与Stan Lippman,
Hurb Sutter 等"组典"C++ 作草比肩的人物。此书之后,虽黠仍有不少著作,~挥
入探讨标准程序库的某些组件,或极力扩屉括准库倡导的思想与技术,但是与<1ñe
C++ Sfø由ù Library) 持同一路辑的书籍,再世有出现过a 所谓奉山北斗己现,后
来者已锦无"I)~ 捕。
于是高了这样的评论..如果你只需要一本讲述C++ 标准程序库和STL 的书
籍,在推蒂Niω,lai Josu恤的E四eC++Stan南d 凶mry) .它是曲:能得到的唯一一
本圭面讲述C++ 括准程序库的书,也是曲:能想靠的最好的一本书"这种奇异情
形在当今技术书坛,虽船不是蜡无仅有,也是极为罕见,
究竟这本书好到什么程度,可且在得这么高的评价?
我正是带着这曲事E 问,摆曼侯捷先生的尴请,着手翻译这本捏典之作曲随着翻
译过程的推进,蛊也连商解开了(.'中的噩噩,在在看来,这本书的特点有四=内容
详实,组扭严密,击度捕恳,挥入植出E
2 此处非革误,而是大陆流行的一句"新但语"意思十分明显,就是"迅雷不且掩耳'
地"掩耳蓝铃"。
孟岩译序
首先,作为-本程序库参考手册,内容详实全面是一项基本要求。但是,本书
在这方面所达到的高度可U 坦树立了一个典范。本书作者一开始就提出一个缸高的
目标,要帮助i幸者解抉"使用C++ 栋准程序库过程中所遇到的所有问题"企所
周知. C++ 辑推程序库是匾棋大蝠,每一部分卫有~fl精嚣的且想和挂术,既不能有
所遭描,卫平能提无边际地挥入下去,何取何舍,何去何从,难度之大可想丽知l
作者在大局上描盖了C++ 标准程序库的全部内喜,在此基础上卫对所有组件都进
行细茧的、立体式的讲解s 所谓立体式讲解,就是时于一个具体组件,作者首先从
m1?上讲解其道理,辑后通过需亮的租例说明其用挂,申明其要点,最后再U 固衰
草详解方式结出参考描述四有如钱塘江潮,层层叠叠,反反复复,不厌其'剧。读完
此书,在想睡舍和费一样感量冲击,井且完全体认作者忖出的巨大'Ú血e
C++ 括唯程序库本身就是一个巨大的有机整体,拥上这本书的立体讲解方式,
前后组织和时应的工作如果做不好. ~&容晶金使整部书显得散乱,令人性慎的是,
这本书在组扭方面植其严密,几无漏桐白相关内容的照应、当E叉章引、前后时应,
无一不处理得墨善曼触,整体上看,整本书就惶一张大网,各部分内容之间组织严
谨,契合密切,却卫头蜡清晰,肺结分明,着实难能可贵。我在闽读和翻译过程中,
常常由异于其内容组织的精密程度,前直惶撞国精曹机械一样分毫不盖一一后来才
想到,本书作者Nicolai Josuttis 就是擅国人,精密是檀意志民族的性格焰印,真是
名不虚传l
t且起睡意志民族,他们的另一个典型性格就是诚实坦率口这一点在这本书同样
有精嚣的展现。身为C++ 标准程序库蚕虽会成员,作者对于C++ 括准程序库的理
解至嚣,平但清楚知道其优点何在. 1!x才其融陆、不足唱本主备和不一致的地方了
如指掌,可贵的是,在这些地方,作者全不避讳,开诚布公,直言不讳,事实是什
么样就是什么样,蜡不立过怖非,艳不肯握过关.作为读者,在们不但得目学到好
东西,而且学到如何理开陆阱和障碍回一个量典型的例于就是对于valarray 的介绍,
作者先是情槽里楚地告抨击者,由于负责击组件设计的人中途垣蝠,这个组件挂有
任过细致的世计,最好不要使用。捕后作者一如既往,详细介韶valarr.町的使用,
完全世有因为前面的话而睛幢有所懈崽e 井且在必要的地方将val酣町的世计缺陷
原原本本地指出章,让读者口服I~i'服。读到这些地方,将心比心,我不禁感叹作者
的坦酣与无私,专黯与严谨。
本书最具特色之处,就是其内容选取上抽具匠,c., .可i胃挥入撞出a 本书的目的
睡了作为手册使用,更是一本供学习者阅读学习的Wωd副" (自学教本) .也就是
诅,除了当手册查阅,你也可国捧着它一篇一篇地阅读学习,王蓝得~辑他的坚实匍
识,一本书兼作"tutorial" 租"referen四就好幢一本字典聋作唯主指南"世
孟岩译序
有植高的组扭曲力和精当的内容选择,简直难P.Á想草生搞成什么样于回了不起的是
本书不仅做到了,而且让你睡觉,学习时它是一本最好的"也阳血1" ,查阅时它是一
本最好的"reference" ,我要诅,这是个奇迹l 单从学习角度来说,本书极为实用,
通过大量鲜明的例子和切中要害的讲解让你迅速入门,而且蝇不仅仅蜡尝辄止,而
是不失时机地挥入进去,把组件的实作技术和扩展方拮都展现居读者。单P.Á STI..
而论,在盟常U侯捷先生提出的"STI..学习三境界"来描述一本书的定位居快,这
本书就憧-座金字塔,扎根于实用,坐锋直达"明理"和"扩展"层?x o 从中曲:可
以学到"refe阳nce 语章"的STI..容器、smartpoin阳(智曲指针〉的盘种实现、扩
充的组合型仿函盘(composing function object) 、STL 和IOStream 的扩展方桂、直
制型的配置器( allocator )设计思路等等高辑技术,也能学到大量的实践经验,比
如vector 的使用技巧, STL 事器的选择, basic_string<> 作为容器的注意事项等
等。可U 这么说,这本书且且将你从入门带到高于层~,可谓部入情出,睛串至极!
我根高兴自己第)改进行技术书黯翻译,就能够碰到这样←本好书,这里要挥
挥睡酣候捷先生蜡我一辈于部庆幸的机舍。翻译过程出乎意料地理辛,前后持撞将
近10 个月。我连字逼甸地阅读原文,捕化理解,译成自且为合适的中文,鼎后再
由佳先生理字连句地阅读原文,对照我的粗糙译立,进行悻订和润色,反直品畸形
成最终译稿-作为译者,侯先生和我所追求的是,原书技术的忠实呈现如上中立化、
中国式的表达。我们为此花费了巨大的心力,对我来说,付出的心血远远超过一般
翻译一本书的植畴。虽陆最终结果需要广大读者评论,但今天面对这厚厚的书楠,
盘问心无恤地事望这曲描足睛,我最大的希望是,每一位读者在学习和查阅这本中
士陋的时性,完全;5掉译者曾经的存在,睡觉不到语吉的隔固,*地在取知识和
技术。对于-个韧涉技术翻译的人来说,这个目标未免太贪心了,可是这始终会是
我心里的愿望,一个译者应由是为了植起略而费力的。
最后,睛谢侯先生一直以来对我的欣赏和帮助, I菌酣睡错在的机会,在十分荣
幸l 感谢华中科技大学出版社的周菌者师,曲曲终真好地关拄着我,鼓励着我回感
谢CSDN 的蒋持先生,酷的抽情鼓励曲终是我的动力。感谢我的父母、弟弟,你们
是我最量的人,是我量坚强的主柱l 感谢曾经帮助过盐,曾是关,c.,过我的每-个人,
无论你现在~样,我为曾岳拥有过的,仍辑拥有着的每一片快乐和成果,衷心地睡
谢你!
视各位读书快乐!
孟岩2002 年5 月于北京