C++学习准备看的书(向C++大牛学习的方法)

1 《泛型编程与STL》侯捷译or英文版 --------- 这本书里从STL的设计哲学切入,讲述了STL为什么要那样设计,五种迭代器如何把容器与算法完美地解耦合。它详细介绍了每一个STL容器与算法,包括接口原型、参数要求、执行时间复杂度等等。
看这本书以前,我感觉自己是在STL的树林里跑,偶尔碰到一棵树就爬上去摘点果子尝尝;看完这本书以后,感觉自己是在俯瞰这片小树林,哪儿有什么树什么果子都一目了然,想要什么都可以顺手拈来了。这感觉是真够棒的。 以后编程的时候,总是下意识先想想STL里有没有现成的算法,如果有就直接用,简洁清晰还高效率。

2 《STL源码剖析》-----------这个是侯捷自己写的。有了前面一本书的基础,这本书里至少不会碰到不认识的接口了。这本书跟《泛型编程与STL》正好相反,从STL接口的代码实现深入进去,把STL的规格说明,庖丁解牛般地翻译成最基础的C++代码。给我印象最深的,是它里面用函数重载,把一个算法接口对好几类迭代器都特化了一遍,以一挑五,让人拍案叫绝。这本书我感觉比《泛型编程与STL》难一点,但还不至于看不懂。面试时要是有人问起STL实现细节,那这本书就可以当大招用了。 

3 《深度探索C++对象模型》----------看这本书,一是因为久慕大名,有时间了想看看;二是实习面试问的C++多态底层实现,都在这本书里(也许就是出自这本书)。 看完之后,对于C++基类派生类内存布局、虚函数表与虚函数指针、RTTI的底层实现,都有了一些认识。知道这些对编程本身没什么帮助,但是可以在脑子里闪一下代码怎么编译的,锻炼人脑编译器。 这也就构成了我C++多态部分的知识基础,面试时的C++多态部分,全靠它了!

4 多用C++做项目

你可能感兴趣的:(C++学习准备看的书(向C++大牛学习的方法))