c++学习书籍

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++学习书籍相关的知识,希望对你有一定的参考价值。

入门的书籍我也有,进阶的该看那些呢?

成为优秀C++程序员必读书目清单

多读一些好的书籍,无论是对于C++ 初学者还是进阶者都是很有帮助的。尤其有助于这些开发者稳固编程基础以及提高编程技能。在此,总结出了一个C++优秀书籍清单,为不同阶段的C++程序员提供不同的学习技巧,希望对初学者入门以及有一定基础者进阶有一定的帮助。
方法/步骤
1
一阶段:
  1.《Essential C++》
  这本书是一本很好的很实用的C++入门书籍,内容不多,但是本书所围绕的是一系列逐渐复杂的程序问题以及用以解决这些问题的语言特性展开讲解,强调的是快速上手与理解C++编程,初学者不仅能学到C++的函数和结构,还会学习到它们的设计目的以及基本原理。
  2.《C++ Primer》
  这本书无论是对于初学者还是中高级程序员,都是一本不可多得的参考书。本书对C++基本概念、技术、以及现代C++编程风格进行了全面而且权威的阐述,是C++初学者的最佳指南;本书可以帮助你编写实用的程序,而无需首先精通每个语言细节。

2
二阶段:
  1.《Effective C++》、《More effective C++》
  作者:Scott Meyers。该书围绕55条准则,每一条都介绍了一个可让你写出更好的C++程序代码的方法,并以特别设计过的例子详加讨论。
  2.《Thinking in C++(C++编程思想)》
  C++ 领域权威著作,介绍了C++实用的编程技术和最佳的实践方法。
  3.《Exceptional C++(C++编程剖析)》和《More exceptional C++》
  这两本书中都包含了40个C++编程问题,这些问题会让你磨练自己的技能,最终成为优秀的C++程序员。这些问题是Herb Sutter精心挑选,与ISO/ANSI C++官方标准相一致,帮助程序员在设计、架构和编码过程中保持良好的风格,从而使编写的C++软件更健壮、更高效。

3
三阶段:
  1.《The design and evolution of C++(C++语言的设计与演化)》
  本书作者也是C++语言的设计者Bjarne Stroustrup,作者在书中综合性地介绍了C++的发展历史,C++中各种重要机制的本质意义和设计背景,这些机制的基本用途和使用方法,讨论了C++所适合的应用领域及其未来的发展前景,既没有忽略关键性的详情,又没有过多地陷入技术细节。
  2.《Inside the C++ object model(深度探索C++对象模型)》
  本书专注于C++面向对象程序设计的底层机制,包括结构式语意、临时性对象的生成、封装、继承,以及虚拟——虚拟函数和虚拟继承,帮助你理解程序的底层实现,以便写出更高效的代码。

4
四阶段:
  1.《Effective STL》
  这是Scott Meyers的第三本C++专著,也是学习STL最权威的书籍。作者对书中的50个指导方针都作了详尽的分析,并配以示例。通过这些规则,C++开发者可以最大限度地使用STL.
  2.《The C++ standard library(C++标准程序库)》
  这是标准模板库字典,你可以在本书中找到STL相关的一切知识。本书焦点放在标准模板库、检查容器、迭代器、函数对象和STL算法上。每一个元素都有深刻的呈现,包括其介绍、设计、运用实例、细节解说、陷阱、意想不到的危险,以及相关类别和函数等。
  3.《Generic programming and the STL(泛型编程与STL)》
  本书阐述了泛型程序设计的核心理念:concepts(概念)、modeling(模型)和refinement(改善),并为你展示这些观念如何导出STL的基础概念:iterators(迭代器)、containers(容器)和function objects(函数对象)。按照本书所述,你可以把STL想象成一个由concepts组成的library,你将学习到STL正式结构并理解其强大的优势。

5
五阶段:
  1.《C++ template》
  这是一本关于C++模板的完整的参考手册和教程,它强调模板的使用实践,包含了现实世界中的例子。每个C++程序员都应该好好读一读这本书。
  2.《Exceptional C++ style》
  作者为Herb Sutter.本书同样提出了40个C++风格相关的问题,对一些至关重要的C++细节和相互关系提出了新的见解,为当今的关键C++编程技术(如泛型编程、STL、异常安全等)提供了新的策略,帮助开发者在开销与功能之间、优雅与可维护性之间、灵活性与过分灵活之间寻找完美的平衡点。
  3.《Modern C++ design(现代C++设计)》
  这本书的作者Andrei Alexandrescu为C++程序员打开了一个新的局面,在书中提供了一些针对软件设计的前沿方法,如联泛型编程、合设计模式等,使程序员可以编写有表现力、灵活、高度可重用的代码。
  总结
  每一阶段的C++程序员都应有相应的专业素养,通过多读书、读好书来不断丰富自己的专业知识,扩展自己的专业面,提升专业素养。
参考技术A c++ primer、c++沉思录、c编程专家。这几本都是很好的,特别推荐第一个本回答被提问者采纳 参考技术B 进阶的推荐 C++ primer , C++primer plus
虽然名字都是 primer 不过实际上读完并且理解了大部分 你就已经是大师了
读的时候多编程 加深理解
而且这种书多读几遍 每次都能有收获的

学习C++的经典书籍

C++ 是一门难学易用的语言!一旦学成,妙用无穷。

相关书籍之多,人人都想找到一份学习的辟邪剑谱。

在这里,由浅入深的罗列出C++的相关书籍,可以根据你的需要去选择自己需要的书籍。

跟随本书单打好基础、开阔视野学好C++吧!

根据个人经验,简单将这些书籍分成三类:入门、提高、拓展,建议按顺序看。

 

入门

《C++ Primer 第 5 版》

C++ 的入门书,我最推荐这一本,必看!!!目前已经更新到第 5 版,包含 C++11 的内容,不要再看第四版了。

无论初学或老手既可用来理解C++11规则背后的原理,也可用其新语言特性与标准库来快速构建健壮程序,本书所有示例均全部采用 C++11 标准改写,这在经典升级版中极其罕见——充分体现了 C++ 语言的重大进展及其全面实践。

丰富的教学辅助内容、醒目的知识点提示,以精心组织的编程示范,让这本书在 C++ 领域的专业地位更加不可动摇。无论是初学者入门,或是中、高级程序员提升,本书均为不容置疑的选择.。

 

提高

《Effective C++》 和 《 More Effective C++》

C++是门比较多坑的语言。

《Effective C++》这本书讲了很多内容,讲了很多如何高效地使用C++的方法,如何避免C++的坑。

 而《 More Effective C++》可以认为是对 Effective C++ 的补充。

 

《Effective STL》

本书中作者解释了怎样结合STL组件来在库的设计得到最大的好处。这样的信息允许你对简单、直接的问题开发简单、直接的解决方案,也帮你对更复杂的问题设计优雅的方法。我描述了常见的STL使用错误,而且向你演示怎么避开它们。那帮助你躲开闪资源漏、不可移植的代码和未定义的行为。我讨论了优化代码的方法,所以你能使STL表现得像它应该的那样快速、光滑。

 

《C++ 标准程序库》第一版

很厚的一本书,可以当做工具书,熟悉下目录,遇到问题当参考、细看。

 

 

《C++ 标准程序库》第二版

本书是全球C++经典权威参考书籍时隔12年,基于C++11标准的全新重大升级。

标准库提供了一组公共类和接口,极大地拓展了C++语言核心功能。本书详细讲解了每一标准库组件,包括其设计目的和方法、复杂概念的剖析、实用而高效的编程细节、存在的陷阱、重要的类和函数,又辅以大量用C++11标准实现的实用代码范例。除覆盖全新组件、特性外,本书一如前版,重点着眼于标准模板库(STL),涉及容器、迭代器、函数对象以及STL算法。此外,本书同样关注lambda表达式、基于区间的for循环、move语义及可变参数模板等标准库中的新式C++编程风格及其影响。

 

《STL 源码剖析》

每一个推荐深入STL的文章应该都少不了这本书。下面几个问题可以考查一下是否需要看看: 1.STL中DQueue的实现机制(数据结构式如何组织的,其迭代器的插入和删除过程中的实现) 2.是否熟悉红黑树,能否叙述其插入和删除过程,如何调整。 3.萃取器的几种实现

 

《泛型编程与STL》

这本书里面对萃取机制及各泛型的概念论述非常透彻,前6章为主要篇章,不可跳过。后面的可在实践中编码练习或查找。 后面章节可在看完之后做为手册使用,对STL中的常用算法和容器进行了归类讲解,并给出了相当数量的示例。

 

《C专家编程》和 《C和指针》

C++源于C,对于指针、对于各种地址的偏移计算,对于大端小端的深刻剖析,还得靠一些硬通货来解析;这两本书虽说不厚,但读起来确实费劲,信息量很足,很多都是在平时C++使用中没有意识到的知识点,却又都是重要的点。让人有知其所以然的快感;

涉及到底层的东西,都是用来验证编程功底是否扎实。要想彻底掌握C++底层的东西,还是得看看专家编程,很好的两本书,指针等讲的很透彻。

 

拓展

《深入理解C++11:C++11新特性解析与应用》

《深入理解C++11:C++11新特性解析与应用》编辑推荐:C++标准委员会成员和IBM XL编译器中国开发团队共同撰写,权威性毋庸置疑。系统、深入、详尽地讲解了C++11新标准中的新语言特性、新标准库特性、对原有特性的改进,以及所有这些新特性的应用。

 

《C++并发编程实战(中文版)》

这本书讲的是 C++11/14 新增的线程库和多线程编程。

 

《C++ API设计》

本书适合具有一定c++ 编程经验的程序员阅读,也适合对api 设计主题感兴趣的读者参考。

现代软件开发中的一大难题就是如何编写优质的api。api负责为某个组件提供逻辑接口并隐藏该模块的内部细节。多数程序员依靠的是经验和冒险,从而很难达到健壮、高效、稳定、可扩展性强的要求。martin reddy博士在自己多年经验基础之上,对于不同api风格与模式,总结出了api设计的种种最佳策略,着重针对大规模长期开发项目,辅以翔实的代码范例,从而有助于设计决策的成功实施,以及软件项目的健壮性及稳定性的实现。

 

《C++沉思录》

《C++沉思录》基于作者在知名技术杂志发表的技术文章、世界各地发表的演讲以及斯坦福大学的课程讲义整理、写作而成,融聚了作者10多年C++程序生涯的真知灼见。全书分为6篇32章,分别对C++语言的历史和特点、类和继承、STL与泛型编程、库的设计等几大技术话题进行了详细而深入的讨论,细微之处几乎涵盖了C++所有的设计思想和技术细节。全书通过精心挑选的实例,向读者传达先进的程序设计的方法和理念。

 

《深度探索 C++ 对象模型》

本书专注于C++面向对象程序设计的底层机制,包括结构式语意、临时性对象的生成、封装、继承,以及虚拟——虚拟函数和虚拟继承。这本书让你知道:一旦你能够了解底层实现模型,你的程序代码将获得多么大的效率。Lippman澄清了那些关于C++额外负荷与复杂度的各种错误信息和迷思,但也指出其中某些成本和利益交换确实存在。他阐述了各式各样的实现模型,指出它们的进化之道及其本质因素。书中涵盖了C++对象模型的语意暗示,并指出这个模型是如何影响你的程序的。

这本书比较难,可以简单看一看,知道调用虚函数是有额外代价的就行…

以上是关于c++学习书籍的主要内容,如果未能解决你的问题,请参考以下文章

c++学习书籍

C++学习书籍:从入门到精通的一套书籍都在这里

如何系统地学习 C/C++ 语言从零基础学习C++,有哪些书籍可以帮助到你?

干货分享:学习 C++ 编程,那些经典书籍是你一定会用上的呢?

11 本值得 C++ 学习阅读的经典书籍

C++ 学习笔记