关于C++的书太多了,很容易让人没有头绪。一直想整理下,把这些书列个书单出来,直到今天才动手。希望我的经验能给后来的初学者一点帮助。
1.《C++程序设计教程》 钱能
很多学校把这本书选做C++课程的教材。简单易懂,例子也很简单明了,该有的部分基本都有了。个人觉的这本书很适合入门,不知道为什么有不少人对这本书评价不是太高。但是个人意见,初学者可以从这本书入手,比《C++ primer》相对好入门点。这本书我一直带在身边,但是看的次数越来越少了,入门时候看的很多。
2.《C++ primer》
这本书的经典就不必说了。个人认为这本书兼顾了俩个方面,入门和工具书。入门读这本书,障碍也不会太大,只是书太厚,要有耐心读完。工具书,是觉的这本书可以一直放在案头,时不时的查点东西,翻点东西,很方便。个人感觉,这本书还是要翻好多遍才能烂熟于心,在次之前,这本书一直有存在手边的价值。
我本人一直把这本书带在身边,不过好在买的是正版,要不早就让我翻烂了。盗版的质量很差,很容易翻烂。
3.《The C++ Programming Language》
这本书也是C++最经典的书之一。作为学习C++的工具书来说,很好,和《C++ primer》不相上下,内容很全很权威。但是据说要比《C++ primer》更深入点,不是特别适合初学者。因为我初学的不是这本书,所以不太好评价。但是作为工具书还是相当的不错。这本书和《C++ primer》至少要有一本放在手边,遇到问题及时查阅,让人受益匪浅。尤其是当这工具书越翻越烂,而你自己的C++越来越强的时候,这本书就变成了个纪念,这种感觉不是电子书可以带来的。
4.《Effective C++》
这本书不是C++入门类书籍,也不是工具书类型,属于进阶型书籍。让你更好更高效的使用C++。这本书以原则的方式介绍了几十个原则,这些原则可以让你把C++用的更好,对C++有更深入的理解。个人强烈推荐这本书,相当值得一读。
5.《More Effective C++》
这本书可以算是《Effective C++》的续集。延续了《Effective C++》的风格,对于进阶的C++学习者来说,也是一本很不错的书。同样是以原则的方式让你更好,更高效更安全的使用C++。
6. 《数据结构》 严蔚敏
数据结构方面,只推荐这一本书,而且是C语言版的。这本书的经典就不解释了,这本书读好了之后,就不用读其他的数据结构的书了。
7. 《高质量C/C++编程指南》 林锐
这本书同样不适合初学入门者,适合进阶者。而且尤其是推荐一直在学校写程序的人工作之前好好读一读,这本书介绍了很多在实际的开发工作中需要注意的东西,很适合入职培训使用。规范大家的行为,提高大家的代码质量。另外这本书的很多题目经常被很多公司作为入职笔试题目,有准备笔试的同学也可以认真学习一下。
8. 《Head first: design patterns》
在C++进阶之后,设计模式是不可避免的要学习的内容。其中这本书可以很好的作为设计模式的初学者的入门书籍,有图画有代码,看起来还不那么费劲。建议直接读英文版,没那么难。
9.《Design Patterns: Elements of Reusable Object-Oriented Software》 四人帮
这本是设计模式的开山之作,也是奠定设计模式现状的经典书目。值得读是肯定的,但是建议不要作为入门书籍,虽然权威,但是不是特别适合初学者一上来就读。初学者读起来有点费劲,读完了可能也忘完了。
还有一部分书没介绍,就是和平台相关的内容。如果在windows下,那么《windows程序设计》以及MSDN是必不可少的资料。如果是Linux,则《UNIX环境高级编程》英文名字叫《Advanced Programming in the UNIX Environment》是必不可少的学习资料。
基本上读过的C++的书就这么多了,还有些读完了就忘记了,这里就不提了。在这里列出来的书,大部分都是读了很多遍。也有一些好的书,一直打算读,一直还没读。回头整理一个打算读的书单列出来。