C++ 是细粒度高性能语言,适用于系统编程、游戏开发、高性能计算。学习路径:基础语法 → OOP → STL → 并发 → 实践。
学习路线
基础阶段
| 内容 | 要点 |
|---|
| 环境搭建 | GCC/MSVC + VSCode/CLion |
| 基础语法 | 变量、数据类型、条件、循环、函数、数组 |
| 指针与引用 | 内存管理核心 |
| 字符串 | C 风格字符串 vs std::string |
| 结构体 | 与类的区别 |
面向对象
- 类与对象
- 继承与多态(虚函数、抽象类)
- 运算符重载
高级特性
| 特性 | 说明 |
|---|
| 模板 | 函数模板、类模板 |
| STL | 容器、算法、迭代器 |
| 异常处理 | try-catch |
并发与性能
基础四大件
| 领域 | 内容 |
|---|
| 数据结构 | 基本结构、常用算法、刷题(LeetCode/Codeforces) |
| 计算机网络 | TCP/IP |
| 操作系统 | 进程线程、并发、内存管理 |
| 设计模式 | 单例、工厂、代理 |
实践
- Linux 系统编程
- 多线程编程
- 网络编程
- 编译调试:makefile、gdb
推荐书籍
| 阶段 | 书籍 |
|---|
| C 基础 | 《C和指针》《C专家编程》 |
| C++ 入门 | 《Essential C++》《C++ Primer》 |
| 进阶 | 《Effective C++》《More Effective C++》 |
| 深入 | 《深度探索C++对象模型》《STL源码剖析》 |
| 实践 | 《Unix环境高级编程》《Linux高性能服务器编程》 |