(红色为必读书目)
1. C++语言的设计和演化
首先肯定要读一读Bjarne Stroustrup的The Design and Evolution of C++,了解
一下这个语言的历史。接下来就可以看别的书了,但要不停地回头看这本书,看到
你不断地学到的新技术是怎么样一点点地被接纳到这个语言中去的。
2. Essential C++中文版和C++Primer(同一个作者)
第一本书因人而异,基础好一些的,可以看Stanley B. Lippman的C++ Primer,这
本书非常地巨大,你打星号的部分可以不要看。基础不太好的,可以看Stanley B.
Lippman的Essential C++,这本书份量要轻得多,不过四个C++的范型都讲了,而
且讲得非常清楚。
3. 程序设计实践(英文名:The Practice of Programming)
第二本应该停止技术层面的东西,静下心来看看Pike和Kernighan的ThePractice
of Programming,好好地整理一下,在程序设计中应该有哪些注意的事项。这本
非常薄的booklet,可以说是程序员必读的指南。
4. C++编程思想
第三本书,就应该是Bruce Eckel写的、候捷译的Thinking in C++,这本书每过
半年我就要重读一遍。可以说每一章都是写得发人深省的,这本书让我感觉到了
技术运用的非常高的境界,但是语言非常平实,只要认真地读,即使基础不行,
也一定可以懂。我在教课的时候,就是用这本书(面对的学生是零基础)。
5. Effective C++和MoreEffective C++、STL源码剖析、C++设计新思维
要更上一层的话,就要慢一步,先要把握C++设计习惯的良好。这是Scott
Meyers的Effective C++和More Effective C++带给我们的无尽收益。我More
Effective C++买不起,只好花了10块钱复印装订了一本"线装本",看起来像葵花
宝典(;-))。这两本书是真正的经典,作者对C++的纯熟,使得语言的风格读起来
简直是如饴甘甜,就像他站在对面在讲课。我手中有这两本书的原版CD,如果有兴
趣,可以发E-mail到sjtu@263.net或在饮水思源投条儿给gaobo索要,只要您提供
光盘我就给免费烧。如果你已经深刻地理解了Effective C++和More Effective
C++,那你可以发现,你在众人中已经是鸡群之鹤。可以指导项目运作了,可以编
写一切你想做的程序了,可以指出别人看起来不错的代码的大小问题了。如果你能
一眼看出有人的代码是对应于"条款27"或"条款M6",那你可真是让本人刮目了。
6. Exceptional C++和MoreExceptional C++、Inside the C++ Object Model