C++学习书籍推荐:从入门到高阶书单

近期看到大家在讨论区有求各个岗位方向推荐书籍的帖子,

为响应各位牛友的需求,这边先整理了呼声超高的C++推荐书单,

欢迎各位大佬回帖补充,我们会 抽取1位认真留言的牛友 ,赠送一个最新版的马克杯。

**每个牛客ID视为一次参与,12月31日开奖,提前祝大家双节快乐哟~

书单简介:

本书单针对C++的学习,主要分为四大部分,以编程语言学习为主,涉及部分操作系统、计算机网络、Linux开发的必读书籍。

有初学者入门必读,也有适合高阶段同学读的书籍,大家可以选择性阅读!

C++编程语言学习

  • 《c++语言的设计与演化》,[美]BjarneStroustrup

C++的设计者关于C++语言的最主要著作之一,可以用来理解C++的设计思路


  • C++ primer,[美] Stanley B. Lippman / [美] Josée Lajoie / [美] Barbara E. Moo

算是工具书,内容很多,建议当成字典或者参考书使用,在语法上遇到什么问题或者编译有问题都可以在这本梳理找答案。


  • Effective C++,梅耶(ScottMeyers)

建议反复阅读,是很多关于C++方面面试问题的出处


  • More Effective C++,梅耶(ScottMeyers)

Effective C++ 的进阶版


  • STL源码剖析,侯捷

C++代码的典型案例,书中不仅仅是分析STL的源码,而且还会有大量的STL使用示例,这些示例完全足够让读者对STL有一定的了解。另外,通过这本书来复习数据结构再好不过,里面对各种二叉树、查找、排序等的描述非常详细,而且非常注重效率


  • Effective Modern C++,[美]ScottMeyers

基于C++11/14,基本上每个Item都会让你有新收获


  • 深度探索C++对象模型,[美]StanleyB·Lippman

每个C++程序员必修之读物,只是内容稍显陈旧。整本书对C++的对象内存形式,继承的实现,多重继承,静态对象等做了详细描述。


  • The C Programming Language,Brian W. Kernighan / Dennis M. Ritchie

简单高效,不适合新手读。里面的习题建议都认真做一遍


操作系统学习

  • 深入理解计算机系统,RandalE.Bryant/DavidO'Hallaron

本书对于计算机体系结构的讲解非常细致,有很多非常有意思的Lab。这本书从程序执行的计算机角度开始,介绍了处理器的体系结构,程序的机器级优化,虚拟存储器,系统级IO,网络等等多个方面。推荐大家和 CMU 15-213 CSAPP 这门课一块看。

Linux开发

  • Unix环境高级编程,史蒂文斯(W.RichardStevens)/拉戈(StephenA.Rago)

对于所有层次UNIX程序员都是一本不可或缺的参考书。


计算机网络

  • 计算机网络原理:自顶向下方法,James F. Kurose / Keith W. Ross

深入浅出,详略得当,初学者很好的入门教材。


  • TCP/IP详解卷一,[美]W·RichardStevens

TCP/IP方面的经典之作,不过有一定的难度


  • 图解HTTP,[日]上野宣

通俗易懂,对Web程序员友善的HTTP协议入门知识书。对HTTP知识的覆盖程度到易读性都做得相当好,具体开发中用到哪块可以再深究。比较适合有计算机网络专业知识基础的读者阅读



-------------------------------------------

大家还有什么学习C++比较推荐的书籍欢迎回帖补充呀~


全部评论
《Head First设计模式》
点赞 回复 分享
发布于 2020-12-28 19:59
C++编程思想第2卷   作者:大师Bruce Eckel , 佳作 Thinking in c++ 温馨提示:一定要看英文版。
点赞 回复 分享
发布于 2020-12-24 11:07
补充一下大话系列,《大话数据结构》《大话设计模式》
点赞 回复 分享
发布于 2020-12-23 10:52
我觉得上面的书很不错,然后最好在看书的同时配合b站的视频学习,这样就不会枯燥
点赞 回复 分享
发布于 2020-12-22 20:35

相关推荐

07-11 22:27
中南大学 Java
程序员牛肉:学历的话没问题。但是没问题的也就只有学历了。 其实你的整体架构是正确的,博客接着干。但是项目有点过于简单了。从后端的角度上讲,你这也就是刚入门的水平,所以肯定约面试够呛。 如果你要应聘后端岗位,那你第一个项目竟然是仿写操作系统。这个你要面试官咋问你。你一定要记住一点,你简历上写的所有的东西,都是为了证明你有能力胜任当前的岗位,而不是为了证明你自己会什么。 如果你只是浅浅的做几个项目,描述也都是烂大街。技术点也都是各种混水类的配置类需求,那你就不要幻想自己能走多远。一定要保持思考,保持学习。
点赞 评论 收藏
分享
05-26 10:24
门头沟学院 Java
qq乃乃好喝到咩噗茶:其实是对的,线上面试容易被人当野怪刷了
找工作时遇到的神仙HR
点赞 评论 收藏
分享
评论
7
88
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务