C++主要业务方向:后端、客户端、游戏引擎、音视频、深度学习底层框架、嵌入式、中间件、数据库、编译器等等,主要集中在对性能要求较高的方面。
入门
C语言
跟着学校学即可,进度快可以看看北大慕课。
C++基础语法,STL库,面向对象
- 《C++编程思想 第一卷》 国外的教材,比较系统。
- 《C++ Primer》个人认为此书目录编排不合理,可以当作字典去看。
- 《Effective C++》
- 《STL源码剖析》
选看:《深度探索C++对象模型》《More Effectice C++》
可以看侯捷的视频,比较进阶,建议至少了解基础语法再看。https://pan.baidu.com/s/1dtT_Cs0Utpbm_CYg4GUCNg?pwd=q7ms
强烈推荐顺便了解C++ 11/14/17/20的新特性。
数据结构
浙江大学的慕课
算法
leetcode上的《剑指offer》(当然codeforces更好)
进阶
模板编程,设计模式
-《C++编程思想 第二卷》
数据库
《高性能MySQL》或牛客网上的相关教程
计算机网络
如果不是做偏底层,重点了解网络层及以上。
- 《TCP/IP详解卷1:协议》
- 《计算机网络:自顶向下》
操作系统
我们需要了解代码运行的环境,就像Java程序员也需要深入了解JVM。
- 《现代操作系统》
计算机组成原理
此部分可以更好的理解C++中地址的概念,同时对于偏硬件的工程师来说,这里也是难点。
- 《计算机组成与体系结构》
也推荐哈尔滨工业大学的慕课
网络编程
- 《Unix网络编程》
客户端方面
Qt,MFC