Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >大厂程序员教你如何学习C++(内附学习资料)

大厂程序员教你如何学习C++(内附学习资料)

作者头像
代码随想录
发布于 2020-06-12 09:47:31
发布于 2020-06-12 09:47:31
6660
举报
文章被收录于专栏:代码随想录代码随想录

关于代码的一切尽在「代码随想录」

目前准备面试同学都知道,C++是百度和腾讯的主流开发语言,而java是阿里的主流开发语言。

对于初学者来说,也不用纠结究竟学习c++还是java

其实只要好好掌握好一门即可,另一门即可融会贯通

因为我自己先后就职于腾讯和百度的工作经历,所以接触C++更多一些

我这里就给大家推荐学习C++,从了解到熟悉的各个阶段应该看的书

为什么不说精通呢,因为精通C++超出我的范围 哈哈,所以我只列出学习到熟悉C++的学习过程。

相信国内敢说自己精通C++的也是少数了

言归正题

首先什么是C++

如果仅仅以为C++就是C加上了一些面向对象的特性,说明还没有真正的了解C++

C++发展这么多年,已经融入了很多元素。

大家可以把C++视为一门联邦语言,而非单一语言

C++主要涉及到如下四块:

  • C语言。说到底C++仍是以C为基础的。区块、语句、预处理器、内置数据类型、数组、指针等等都来自C。
  • Object—Oriented C++。这部分就是 C With Classes 所诉求的:构造函数、析构函数,封装、继承、多态、虚函数(动态绑定) 等等。
  • Template C++。这是C++泛型编程的部分,也是大多数程序员经验最少的部分。Template相关考虑与设计已经弥漫整个C++,也正是因为Template带来了新的编程泛型,就是模板元编程。
  • STL。STL是一个程序库。容器、迭代器、算法以及函数对象的规约有极佳的紧密配合和协调。STL有自己的一套规则,所以当你使用STL的时候必须要找它的规约来。

我这里推荐5本书,建议按照我列出来的顺序进行学习。

第一本书:C++ primer,豆瓣评分:9.4

这本书是C++经典教程,书中的所有例子均采用了C++11的标准。

书中的教学辅助内容是非常丰富,编程示范也是精心设计,所以这也是C++ Primer一直保持着在C++领域的权威地位的原因。

无论是对初学者入门,还是已经工作的C++程序员提升自己的技术实力,这本书都是首选

看完了本书,可以说入门C++了。

第二本书:effective C++,豆瓣评分:9.6

对于这本书,在C++圈子里有一个传言:C++程序员分为两类,读过Effective C++的和没读过Effective C++的。

这本书是C++顶级大师scott Meyers成名之作,

看完primer之后,再读Effective C++,可以快速提升自己C++的功力。

这本书也不是读完一遍的快餐书籍,第一遍读的时候可能很多条款领会不到其真正用意。

这就需要反复阅读才能体会,这里蕴藏着C++精神的思想和无与伦比的表达能力。

第三本书:effectiveSTL,豆瓣评分8.9

本书是真的STL的经验之谈,同样是Scott Meyers大师的力作

书中有50个条款,每一个条款都举例了在使用STL时候需要注意的地方

并且详细的分析了为什么会有这样的问题,以及给出相应的解决方案。

此时看完了C++ primer,effective C++,effective stl之后,可以说自己是掌握C++了

第四本书:STL源码剖析,豆瓣评分:8.7

每一个程序员都知道,提高编程水平的最快捷径就是剖析大师的代码。

源码在手,天下我有。

前辈们的经验结晶、思维过程、技术思想、缜密风格,都原封不动的体现在源码之中。

本书讲述了各个容器的源码实现,包括vector、list、heap、deque、Red Black tree、hash tablet、set/map 等等。

还有各种算法的实现,包括排序、查找、排列组合、数据移动、复制技术等等。

看完此书可以说是有一点底气说自己熟悉C++了,至少比了解更近了一部

第五本书:深度探索C++对象模型,豆瓣评分8.9

这本书重点介绍C++面向对象程序设计的底层实现机制

主要包括结构式语意、临时性对象的生成、封装、继承,以及虚拟函数和继承

这本书可以让你彻底了解底层实现的机制,这会让你的代码执行效率获得极大的提升。

对于C++底层机制感兴趣的读者,这必然是一本让你大呼过瘾的绝妙好书。

看完此书,可以说自己真的熟悉C++了。

最后呢,也要强调一下,

读过只是开始,多练多实战内化成自己的东西才是王道!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 代码随想录 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
飞龙的程序员书单 – 编程语言
丢掉老谭的那本书吧,这本书才是最好的入门书。这本书两百多页,语言简洁,但又覆盖到了C语言的每个方面。然而这本书不仅仅讲解C语言,还附带讲解了二分查找、快速排序、二叉树、哈希表这些重要的数据结构和算法。甚至为了解释让人头疼的复杂声明,写了一个递归下降的parser。就算你不是拿此书入门的,也可以放在手头当作参考书来用。
ApacheCN_飞龙
2019/02/15
9870
你有一份新的C++书单,请注意查收!
C是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。
程序员黄小斜
2020/06/19
6400
游戏开发图书推荐--我读过的技术经典图书
很多同学问我学游戏开发应该看些什么书,我在这里抛砖引玉,给一份推荐表,希望大家共同提高。由于本人英文不太好,推荐的大部书籍都是国人编写的,有些经典的外文图书可能是翻译不好,我自己难以读下去,所以未能推荐。
帘卷西风
2018/08/03
1.4K0
校招| C++ 后台开发学习路线
之前一直没写的原因在于自己觉得自己懂得太少,还没成为一个大佬,还没成为一个精通某个领域的专家,怎么能教别人如何学习呢?
C语言与CPP编程
2021/03/25
1.5K0
校招| C++ 后台开发学习路线
C++ 夺冠!成为 TIOBE 2022 年度编程语言(附C&C++书单)
👆点击“博文视点Broadview”,获取更多书讯 整理 | 苏宓 出品 | CSDN(ID:CSDNnews) 2022 年年度编程语言揭榜啦!在上个月预想的 C++、C、Python 三种候选语言中,C++ 脱颖而出,成为 TIOBE 2022 年度编程语言的最终获得者! C++ 摘得桂冠 近段时间来,C++ 的发展有目共睹,其在上个月甚至首次超过了 Java,位居榜单第三的位置。现如今之所以赢得年度编程语言的称号,TIOBE 官方也进行了总结与回顾。 其表示,「C++ 受欢迎的原因是它出色的性能
博文视点Broadview
2023/04/04
7480
C++ 夺冠!成为 TIOBE 2022 年度编程语言(附C&C++书单)
书单 | 振聋发聩,撼世经典!总有那么一些书经得住时间的考验
👆点击“博文视点Broadview”,获取更多书讯 技术更新太快,所以技术书过不了多久就会被淘汰? 在这个充满着变化的世界里,总有那么些不变的东西,帮我们打好地基,让我们可以以不变应万变,在技术的道路上走得更稳、更远! 博文菌今天就来给大家分享10本经受了几十年风霜,依然用智慧的光芒指引你通往技术殿堂的传世经典,让我们的技术之路从品味经典开始! ----   01 ▊《C++ Primer中文版(第5版)》 Stanley B. Lippman,Josee Lajoie,Barbara E. Moo
博文视点Broadview
2023/05/06
2290
书单 | 振聋发聩,撼世经典!总有那么一些书经得住时间的考验
呕心沥血一个月,为小白新手准备的C/C++ Linux求职版学习路线
他是非科班转到计算机来的,所以基本功比较差,我专门花了一个多月写了这篇学习路线,全文超过8000字,文章润色了好久,配套的资料全部找齐了。
拓跋阿秀
2021/10/20
1.5K0
一个C/C++开发工程师的学习路线(已经无路可退,唯有逆风飞翔)
文章首发于本人CSDN账号:https://blog.csdn.net/tefuirnever
我是管小亮
2020/04/20
1.7K0
聊聊阿秀过去三年间做的最正确的一件事 | 快来薅羊毛
我买的大部分是技术书,也有一些非技术书,比如《明朝那些事儿》、《平凡的世界》之类的。
拓跋阿秀
2021/04/26
1.4K0
聊聊阿秀过去三年间做的最正确的一件事 | 快来薅羊毛
35岁以上的大龄程序员们,后来都干什么去了?
知乎上有个话题叫做“程序员的悲哀是什么?”,有个高赞回复直戳大多数程序员的命门:“最大的悲哀就是以为自己挣到了很多钱,其实根本不懂怎么挣钱,随着年龄的增长,工作瓶颈越来越多,越来越容易受到歧视,却不知道怎么走下去!”
江一铭
2022/06/16
1.6K0
35岁以上的大龄程序员们,后来都干什么去了?
书单|互联网企业面试案头书之程序员技术篇
“金三银四”遇见“开学季”,不管是准备换工作,还是准备春招,小伙伴们是不是都急切地想要给自己充充电呢? 从本期书单开始,博文菌会陆续为大家整理出面试互联网行业各类岗位的相关图书,这些书都是经过口碑验证的畅销经典品,希望能够帮大家顺利拿到心仪的Offer! 本期为大家带来的是10本程序员面试技术岗的案头书! 温馨提示:京东和当当的优惠还在继续,有购书需求的小伙伴不要错过哦! ----   01 ▊《labuladong的算法小抄》 付东来(@labuladong) 著  用喜闻乐见的语言讲算法 GitH
博文视点Broadview
2023/05/19
2300
书单|互联网企业面试案头书之程序员技术篇
C、C++ 成众矢之的,这群程序员发起编程语言“革命”!
旧语言老矣,尚能饭否? 整理 | 苏宓 出品 | CSDN(ID:CSDNnews) 在 HN 的热榜中,一篇题为《编程语言工具进展缓慢》的文章吸引了不少网友的注意,其写道,「当一个新工具被创新开发时,较新的编程语言就有足够多的机会将这种创新融入到他们的语言工具中,并使之标准化,最终让其自身比旧语言更具优势一些。如果把这些增量逐渐累积起来,那么旧的语言就会显得很痛苦和过时,甚至最终被淘汰。」 放眼编程榜单如 TIOBE,虽然排名靠前依然是我们熟悉的 Python、C、C++、Java 等语言,但是近日来,
博文视点Broadview
2022/08/26
7350
C、C++ 成众矢之的,这群程序员发起编程语言“革命”!
(修订)计算机科班学习资料汇总
昨天文章后,有非科班的小伙伴要求推荐一些科班看的书,本文作者是github上拥有4Wstar的大神,斩获BAToffer,推荐一手科班的学习资料供大家借鉴,文中一些资源链接被微信和谐了,建议大家去原贴地址。(这个github很强大,一定要去瞅瞅) 出自: https://github.com/CyC2018/CS-Notes/blob/master/LEARNING.md
乔戈里
2019/03/15
9440
Linux C++ 后台开发:进BAT的学习路线
链接:C++ & Linux 后端开发入BAT学习路径 - 力扣(LeetCode)
GPT4算法工程师
2024/03/11
3660
Linux C++ 后台开发:进BAT的学习路线
Linux C++生存指南
本文没有什么花里胡哨的东西,也没有广告,更没有长篇大论,只有一如既往的干货,期待大家留言!
公众号guangcity
2020/06/03
4K0
很多小伙伴问我推荐什么书籍和网课,这次把私藏很久的资料都贡献了(上)
平时有不少读者朋友问,有没有学习书籍网上课程推荐?今天结合自己学习经历与身边几个朋友的经历总结了一份程序员相关的书籍和网课。
C语言与CPP编程
2021/06/17
1.2K0
2018程序员必读书单
“如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本,你会选择哪本书呢?这个书单列表内容丰富,涵盖很多东西。”欢迎大家在国庆小长假期间来通过阅读充实自己哦! 1. 《代码大全》 史蒂夫·迈克康奈尔 “优秀的编程实践的百科全书,《代码大全》注重个人技术,其中所有东西加起来,就是我们本能所说的“编写整洁的代码”。这本书有50页在谈论代码布局。” —— Joel Spolsky 对于新手来说,这本书中的观念有点高阶了。到你准备阅读此书时,你应该已经知道并实践过书中99%的观念
企鹅号小编
2018/01/11
1.5K0
2018程序员必读书单
一个优秀的程序员应该养成哪些好的习惯?
多次担任技术面试官,遇到很多优秀的名校毕业生。凡此种种,从自己和别人身上总结出如下一些好的习惯。
范蠡
2023/01/04
1.4K2
一个优秀的程序员应该养成哪些好的习惯?
Java学习必备书籍推荐终极版!
很早就想把书单更新一下了,昨晚加今天早上花了几个时间对之前的书单进行了分类和补充完善。虽是终极版,但一定还有很多不错的 Java 书籍我没有添加进去,会继续完善下去。希望这篇文章对你有帮助,不要再无书可看。
乔戈里
2019/05/13
1.6K0
大神推荐的16本学习数据分析挖掘的好书
深入浅出数据分析 以类似“章回小说”的活泼形式,生动地向读者展现优秀的数据分析人员应知应会的技术。
一墨编程学习
2019/04/18
1.5K0
推荐阅读
相关推荐
飞龙的程序员书单 – 编程语言
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档