无疑的,《C++ Primer》是一本相当好的书,里面的内容相当丰富。
然而,或许是它太过于丰富了,作为primer,我始终认为它有所欠缺。
欠缺的,不是它的内容,而是它的知识框架。
我心中理想的C++指导书的样子,可以根据《C++ Primer》拆分成两本。
第一本,基础篇。
一、从类型、变量、表达式,到语句、函数。介绍这些语言的基本。
二、从类到封装、继承、多态。介绍其基本知识,讲述面向对象的思想。
三、中间穿插一些如动态内存分配、标准库容器、常用标准库算法、运算符重载、泛型程序设计等的知识点。
至此,就可以对C++有基本的,完整的认知。
第二本、进阶篇。
再对各种知识点进行拓展;
对类、以及面向对象的设计进行更进一步的阐述;
对标准库更加全面的介绍;
对更高深知识的补充。
而《C++ Primer》则详细地对每一块知识点进行完整的介绍。
这样的坏处就是仅仅要了解整个C++语言的框架,就不得不等到几乎看完了整本书的时候。
并且由于它的内容很丰富,每一个知识点若不是有一定的语言基础,试图去理解它,很可能会显得艰难了些。
因此,《C++ Primer》是一本相当好的书,但它并不适合作为一本primer,它更适合不时的拿出来对一些知识点进行全面一些的复习。
至少,若没什么语言基础,想通过这本书入门的话,并不是一个好的选择。