C++学习书单

简介: 关于C++的书太多了,很容易让人没有头绪。一直想整理下,把这些书列个书单出来,直到今天才动手。希望我的经验能给后来的初学者一点帮助。1.《C++程序设计教程》 钱能很多学校把这本书选做C++课程的教材。
关于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++的书就这么多了,还有些读完了就忘记了,这里就不提了。在这里列出来的书,大部分都是读了很多遍。也有一些好的书,一直打算读,一直还没读。回头整理一个打算读的书单列出来。

目录
相关文章
|
18天前
|
算法 网络安全 区块链
2023/11/10学习记录-C/C++对称分组加密DES
本文介绍了对称分组加密的常见算法(如DES、3DES、AES和国密SM4)及其应用场景,包括文件和视频加密、比特币私钥加密、消息和配置项加密及SSL通信加密。文章还详细展示了如何使用异或实现一个简易的对称加密算法,并通过示例代码演示了DES算法在ECB和CBC模式下的加密和解密过程,以及如何封装DES实现CBC和ECB的PKCS7Padding分块填充。
43 4
2023/11/10学习记录-C/C++对称分组加密DES
|
5月前
|
算法 C语言 C++
C++语言学习指南:从新手到高手,一文带你领略系统编程的巅峰技艺!
【8月更文挑战第22天】C++由Bjarne Stroustrup于1985年创立,凭借卓越性能与灵活性,在系统编程、游戏开发等领域占据重要地位。它继承了C语言的高效性,并引入面向对象编程,使代码更模块化易管理。C++支持基本语法如变量声明与控制结构;通过`iostream`库实现输入输出;利用类与对象实现面向对象编程;提供模板增强代码复用性;具备异常处理机制确保程序健壮性;C++11引入现代化特性简化编程;标准模板库(STL)支持高效编程;多线程支持利用多核优势。虽然学习曲线陡峭,但掌握后可开启高性能编程大门。随着新标准如C++20的发展,C++持续演进,提供更多开发可能性。
93 0
|
3月前
|
编译器 C语言 C++
配置C++的学习环境
【10月更文挑战第18天】如果想要学习C++语言,那就需要配置必要的环境和相关的软件,才可以帮助自己更好的掌握语法知识。 一、本地环境设置 如果您想要设置 C++ 语言环境,您需要确保电脑上有以下两款可用的软件,文本编辑器和 C++ 编译器。 二、文本编辑器 通过编辑器创建的文件通常称为源文件,源文件包含程序源代码。 C++ 程序的源文件通常使用扩展名 .cpp、.cp 或 .c。 在开始编程之前,请确保您有一个文本编辑器,且有足够的经验来编写一个计算机程序,然后把它保存在一个文件中,编译并执行它。 Visual Studio Code:虽然它是一个通用的文本编辑器,但它有很多插
|
3月前
|
Java 编译器 C++
c++学习,和友元函数
本文讨论了C++中的友元函数、继承规则、运算符重载以及内存管理的重要性,并提到了指针在C++中的强大功能和使用时需要注意的问题。
31 1
|
6月前
|
存储 安全 编译器
【C++入门 四】学习C++内联函数 | auto关键字 | 基于范围的for循环(C++11) | 指针空值nullptr(C++11)
【C++入门 四】学习C++内联函数 | auto关键字 | 基于范围的for循环(C++11) | 指针空值nullptr(C++11)
|
6月前
|
人工智能 分布式计算 Java
【C++入门 一 】学习C++背景、开启C++奇妙之旅
【C++入门 一 】学习C++背景、开启C++奇妙之旅
|
6月前
|
存储 自然语言处理 编译器
【C++入门 三】学习C++缺省参数 | 函数重载 | 引用
【C++入门 三】学习C++缺省参数 | 函数重载 | 引用
|
6月前
|
小程序 C++
【C++入门 二 】学习使用C++命名空间及其展开
【C++入门 二 】学习使用C++命名空间及其展开
|
6月前
|
存储 C++ 索引
|
6月前
|
存储 C++ 容器