C++ 学习与面试资料导航
这份导航收集了一批公开可访问的 C++ 学习资料。它们各有侧重:有的适合建立知识地图,有的适合按题复习,有的则能直接跟着源码理解工程实现。
如果刚开始整理知识体系,建议先选一个综合站点作为主线,再用题库查漏补缺。项目源码更适合在掌握基础语法、CMake 和调试工具后动手。
1 一、系统知识库:用来建立主线
1.1 编程指北:C++ 面试题库
覆盖 C++ 基础、面向对象、内存管理和现代 C++ 等模块。分类清楚,适合先快速浏览目录,建立“还需要学什么”的整体地图。
1.2 huihut:C/C++ 技术面试知识库
除了 C/C++,还包含 STL、数据结构、操作系统、网络与链接装载等内容。适合把语言知识和计算机基础串起来。
1.3 卡码笔记:面试知识库
覆盖语言、操作系统、网络和并发等常见方向,适合按模块复习,并顺着题目继续追问底层机制。
1.4 小林 coding:C++ 面试题
以问题为入口,配有较多图解。遇到内存管理、STL 或语言特性等问题时,可以用来辅助理解。
2 二、逐题练习:用来查漏补缺
2.1 面试鸭:C++ 基础面试题库
适合快速检查基础题覆盖情况。使用时不要只背结论,可以继续追问:为什么这样设计、底层如何实现、边界在哪里。
2.2 拾光小舟:C++ 基础面试集
按“回答重点”和扩展内容组织,适合把零散知识整理成能在面试中表达的答案。
2.3 程序厨:C++ 面试题库
题目覆盖面较广,可以当作复习清单使用。遇到没有完整展开的题目,再回到系统知识库补原理。
2.4 guaguaupup:C++ 后台开发面经
内容覆盖 C++、Linux、操作系统、网络、数据库和设计模式等方向,适合准备后端岗位时补齐关联知识。
3 三、作者公开资料:用来交叉验证
下面几处资料来自同一作者或同一资料体系,适合互相对照,不必重复通读。
部分入口可能要求登录。公开仓库与网站内容可以作为补充,但不代表其他配套内容也全部开放。
4 四、开源项目:从“会答”走到“会做”
4.1 BuriedPoint:埋点上报 SDK
仓库包含库实现、服务端、示例、测试和 CMake 配置,适合观察一个小型 C++ SDK 如何组织。阅读时可以沿着“初始化 → 启动 → 上报 → 持久化或发送”的调用链推进。
几个值得优先看的入口:
这个项目偏向 Windows/MSVC 环境。阅读源码时,可以重点检查对象生命周期、线程安全、失败重试,以及接口被错误调用时的边界处理。
5 五、推荐使用顺序
- 从“编程指北”或“huihut”选一个作为主线,先搭知识地图。
- 用面试鸭、拾光小舟和程序厨检查遗漏,但不要同时刷多个重复题库。
- 每遇到一道高频题,整理成“结论 → 机制 → 边界与取舍”三层回答。
- 最后选一个小项目跟调用链、编译运行,再脱离源码重写最小版本。
资料会变化或失效;如果某个入口打不开,可以优先检查它对应的 GitHub 仓库或站点首页。