Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chengxumiaodaren/cpp-learning


https://github.com/chengxumiaodaren/cpp-learning

Last synced: 25 days ago
JSON representation

Awesome Lists containing this project

README

        

# C++学习

致力于搭建一个最好的C++学习平台。

**很多人不知道是否应该入坑C++**
**很多人不知道如何准备C++面试**
**很多人不知道如何入门C++**
**很多人不知道如何进阶C++**

这些人可以来这里看看!**如果大家有学习资源推荐,欢迎提MR**。

**欢迎大家的批评指正,但不接受喷子,感谢支持,如果大家觉得不错,求给个star!**

**如果阅读时,发现错误,或者其它任何问题可以提issue**

另外大家也可以关注我的**公众号:程序喵大人**,以后所有文章都会首发在公众号上,下面是公众号二维码,谢谢大家支持。

我还特意组建了一个优质的C++学习社群,里面有更多优质的C++学习资料,感兴趣可以点击此链接了解:[https://t.zsxq.com/zJynu3z](https://t.zsxq.com/zJynu3z)

我也特意为大家整理了一些文档和脑图,详见doc目录。
## 干货

### 入门必备

#### 基础

- [入门可以首先看清华郑莉老师视频](https://space.bilibili.com/702528832)

- [C++学习路线](https://mp.weixin.qq.com/s/poq9aDdEL5kLM5sjSqJ72A)

- [C++服务端学习路线](https://mp.weixin.qq.com/s/6qTLqEU5JuxBo0wHjBWG0Q)

- [C++就业方向](https://mp.weixin.qq.com/s/GDBqvRTuaMg8WPaTTsFbmg)

- [如何入门C++](https://mp.weixin.qq.com/s/koqsBzRSjh_M5GrI-WZhgw)

- [学习C++应该做点什么项目](https://mp.weixin.qq.com/s/DLQllBnFyA6vt2aFENP-2Q)

- [C++基础知识汇总](https://mp.weixin.qq.com/s/eYLJ0pzSQjOfXgDsXL0p0w)

- [C++面试宝典](https://mp.weixin.qq.com/s/qhFERQ1odNkgZS0PkHm1EA)

- [数组长度可以为变量吗?](https://blog.csdn.net/qq_29426201/article/details/106342991)

- [是否应该使用异常处理](https://mp.weixin.qq.com/s/BIaz2Vbf3HyjEDTM9abSAg)

- [new/delete、new[]/delete[]为什么需要配对使用](https://mp.weixin.qq.com/s/5vFess8NxQdUwsvtrWs8WA)

- [指针和引用的区别以及使用场景](https://mp.weixin.qq.com/s/f9KQ1eNGGSY2Lqv9JM4UVQ)

- [C++对象布局分析](https://mp.weixin.qq.com/s/sufz7wxC_rwc1q3FXY-QMQ)

- [C++为什么要入这4种类型转换?](https://mp.weixin.qq.com/s/6YW7VX787X7kZiRBLbVn-Q)

- [为什么会出现nullptr?](https://mp.weixin.qq.com/s/dov9ofXoJTX8rEa9asTZuQ)

- [非常全面的时间相关所有函数使用](https://mp.weixin.qq.com/s/0W8JBokXk0vPlAtkd2sFPQ)

- [C++编码规范](https://mp.weixin.qq.com/s/ulSr2GUc1pJf09LxnwTTqQ)

- [sqlite3使用教程](https://mp.weixin.qq.com/s/xrIxe9JE7uNzir0c8i1tsQ)

- [如何学好C++?](https://mp.weixin.qq.com/s/VJc_pIdYjmvU1t7W0zTpBA)

- [volatile关键字解析](https://mp.weixin.qq.com/s/6rkCEBuFjUHERk9RmeWLbQ)

- [C++避坑指南](https://mp.weixin.qq.com/s/7PolqHz6IH1wuZTXKPU_xg)

- [字符串split方法实现](https://mp.weixin.qq.com/s/LdiMuhY0IDFCP8V1dPxg-g)

- [RTTI知识点](https://mp.weixin.qq.com/s/vzuU0qRRsD-aLuWxMTXA_g)

- [C++匠心之作从0到1入门资料](https://github.com/AnkerLeng/Cpp-0-1-Resource)

#### C++11 新特性

- [auto&decltype知识点](https://mp.weixin.qq.com/s/3BQ2JlVQsE0sm6eDNa5AdA)

- [左值、右值、左值引用、右值引用、移动语义、完美转发](https://mp.weixin.qq.com/s/aCv7vIyrGyqu06QpNjZFTA)

- [C++11列表初始化](https://mp.weixin.qq.com/s/wpV4K0aJS9l3ilk4nuurQA)

- [std::function和lambda表达式](https://mp.weixin.qq.com/s/6zzF8GEgpMsNrdoBLi5csA)

- [C++11的模板改进](https://mp.weixin.qq.com/s/bnu46tUodqxKLfLJ5Zxd0A)

- [智能指针](https://mp.weixin.qq.com/s/Aujdxj3k_apNwW9Cnd3_eg)

- [线程相关所有知识点](https://mp.weixin.qq.com/s/rPjRTOTYK2SGr6WxgWI_Vg)

- [C++11新特性的所有知识点](https://mp.weixin.qq.com/s/kAH-402oYgAa3GAVgJ8EaQ)

#### C++14 新特性

- [C++14新特性的所有知识点](https://mp.weixin.qq.com/s/xeeOfusRDSUQQyplUA-o7g)

#### C++17 新特性

- [C++17新特性的所有知识点](https://mp.weixin.qq.com/s/6FcCfFWHwcmywPuemyxHng)

- [variant实现多态](https://mp.weixin.qq.com/s/bTFbunrSLnOtyCSJEZwR3A)

#### C++20 新特性

- [C++20新特性指南](https://mp.weixin.qq.com/s/TSnN9QRyqZsa8i9-KKKDpQ)

- [latch、barrier、semaphore](https://mp.weixin.qq.com/s/5VFXzsaxwLJumCvMtbVHJg)

#### 常用的新特性

- [我常用的C++新特性](https://mp.weixin.qq.com/s?__biz=MzkyODE5NjU2Mw==&mid=2247486826&idx=1&sn=6c9779db19fb28585aceb904878d203b&chksm=c21d3fd6f56ab6c0e3ef5ab39d67006942e30d8bd2607a1023d23db7e7dff97796e1ab288d8f&token=1242239139&lang=zh_CN#rd)

#### 必备技能

- [如何写简历](https://mp.weixin.qq.com/s/JBVR4W4cyd3xVvF6dAEF4g)

- [程序员必备技能](https://mp.weixin.qq.com/s/IVdtn_9DQXO0a3pn_jHhaA)

- [如何适应新环境](https://mp.weixin.qq.com/s/jJsUf9YfzVMGIVk2AwKNTA)

- [大佬的经验之谈](https://mp.weixin.qq.com/s/1PpbVTu9Dt3Zr4YuDpC_uQ)

### 进阶必备

#### 常识

- [条件变量有个坑需要注意](https://mp.weixin.qq.com/s/gqq6TZCNabI3qvejzqFcGQ)

- [为什么都说虚函数慢?](https://mp.weixin.qq.com/s/eIS8kjPT6R_uQMqLwKSXDQ)

- [C++内存管理全景指南](https://mp.weixin.qq.com/s/GGoPUZjgmGPewATL_QuJSA)

- [编译器如何实现的lambda表达式](https://mp.weixin.qq.com/s/L0tAA9tGdL2i8K-iO7UusQ)

- [普通的int main(){}没有写return 0会怎么样?](https://mp.weixin.qq.com/s/k3i7MW28UVtr86RU51-KuQ)

- [为什么空类大小是1](https://mp.weixin.qq.com/s/uatF3kF7SRQ-zLpXSoYeyg)

- [SDK开发的一些思考](https://mp.weixin.qq.com/s/DmWTD8ve0pfomy4pl4O43Q)

- [软件开发的建议](https://mp.weixin.qq.com/s/2sgLPjyujNrO8fgsTRTPDA)

- [模板定义一定要写在头文件中吗](https://mp.weixin.qq.com/s/49rziyP5XICMn16vFcK_ew)

- [折叠表达式知识点](https://mp.weixin.qq.com/s/0BTD8w_doWXBsHx6ij72jg)

- [cout vs printf](https://mp.weixin.qq.com/s/wAS1Xk4IsGmBggg4WiBaIw)

- [async的两个坑](https://mp.weixin.qq.com/s/lNct6HRknCNL9X9DAZjCBg)

- [const重载](https://mp.weixin.qq.com/s/xsMwv1hR31YqquPFB4oTWw)

- [优雅的实现多维数组](https://mp.weixin.qq.com/s/Lz7pC-0DF0PtBnULBw-Gqw)

- [推荐资料:更多C++编程技法](https://upload.wikimedia.org/wikipedia/commons/5/55/MoreCppIdioms.pdf)

#### 源码分析

- [源码分析string的实现](https://mp.weixin.qq.com/s/jnYQ_TRqe8otOhST8Pesww)

- [源码分析shared_ptr的实现](https://mp.weixin.qq.com/s/rx5QvFHCacC7SHtXlV_C8w)

- [分析STL的基础能力:type_traits](https://mp.weixin.qq.com/s/4VbipLVR34D_iOMiJntHnw)

- [STL容器源码分析](https://mp.weixin.qq.com/s/Khys6g82qRQxqJjKSUTreA)

- [malloc内存分配器原理](https://mp.weixin.qq.com/s/KKsMAYh9mgr0GEgqxKWA_g)

#### 性能优化

- [高效代码的一些建议](https://mp.weixin.qq.com/s/B0cKUQyL4q34Zb6TggtcRQ)

- [编译器都做了哪些优化](https://mp.weixin.qq.com/s/_Dunn97fMDkEhkPidf1IJw)

- [strip必知必会](https://mp.weixin.qq.com/s/twFor039zSOuqVKE4XdX0Q)

- [静态代码分析工具:让bug无所遁形](https://mp.weixin.qq.com/s?__biz=MzkyODE5NjU2Mw==&mid=2247493747&idx=1&sn=39db000227fb46570dfff160ca89b413&chksm=c21edacff56953d95f357a6a8b8eca12dd810d20dd170858867377795a21e86b5ae127fb871f#rd)

- [科普内存对齐](https://mp.weixin.qq.com/s/iJlOcQjVf6e7a3K84fdekg)

- [高性能代码必备:CPU Cache](https://mp.weixin.qq.com/s/iKWQZxn6XYKU9KnlBRynfg)

- [if-else效率为什么这么低?](https://mp.weixin.qq.com/s/m8avve1ahFrf8KJ0n2w8mA)

- [如何消灭if-else](https://mp.weixin.qq.com/s/cSrJao-sexcS18EhIQlA-Q)

- [性能调优工具大全](https://mp.weixin.qq.com/s/WL-agdox7uNaPe4PV8HgQg)

- [如何优化Linux程序体积大小](https://mp.weixin.qq.com/s/oOExVor6RMDE3SHG4UZ1_Q)

- [代码效率分析](https://mp.weixin.qq.com/s/i7V6lmtQpuFADYZ8ApmkWA)

- [并发方向的优化](https://mp.weixin.qq.com/s/sxlmaCChrosZ8Qcaew7G7A)

- [内存方向的优化](https://mp.weixin.qq.com/s/0uK98WsXv57lJYakA2oqGg)

- [如何设计结构体](https://mp.weixin.qq.com/s/FbaGdRgUFmfXYY52NxbbbA)

- [如何设计C++的类](https://mp.weixin.qq.com/s/p7zzhYgJklbNhkl362r0fQ)

- [多线程的一些建议](https://mp.weixin.qq.com/s/SkH2CotAenSE79I2LMbD0w)

#### 造轮子必备

- [如何设计高效的log模块](https://mp.weixin.qq.com/s/hdkjkNaLQFGP2M83GN7JkQ)

- [如何实现功能完备的线程池](https://mp.weixin.qq.com/s/uz85-w9ZfwRP0ZZCI7jOzQ)

- [如何实现定时器](https://mp.weixin.qq.com/s/Hmn5B7qctAp20tggnQcFTw)

- [怎么自己写一个内存泄漏检测工具](https://mp.weixin.qq.com/s/NE4Ozd2XtIshN45YJjR04Q)

- [简单的对象池实现](https://mp.weixin.qq.com/s/bWe8dLs-sgoCI_5sQbeOaw)

- [简单的shared_ptr实现,代码有点bug,具体见评论区](https://mp.weixin.qq.com/s/n8O0Xn8hqpa5On-h8Zlcbg)

#### 编译链接

- [gcc test.cc的背后经历了什么?](https://mp.weixin.qq.com/s/PaXLQnaCjGkQGIjnPnqRww)

- [程序一定要从main函数开始运行吗?](https://mp.weixin.qq.com/s/ZkLAykPN5UbZuYsDn97kDA)

- [程序链接与分段知识点](https://mp.weixin.qq.com/s/p6WyMlTQJ6ZumZFdt3531w)

- [可执行程序装载到虚拟内存全过程](https://mp.weixin.qq.com/s/86HecgrAj4gH7ZQi0jF0Ng)

- [函数调用全流程](https://mp.weixin.qq.com/s/rHLPyrEPLHdZCuJ175Cung)

- [共享库的版本控制](https://mp.weixin.qq.com/s/nQgM0zT24chXn7kzhQ5ypA)

- [动态链接原理](https://mp.weixin.qq.com/s/IE7nE6ERb_0OtnZbF-GK8g)

- [静态链接与动态链接的区别](https://mp.weixin.qq.com/s/VDnTE6ImQXt_MxbhEHQk_Q)

- [科普文:编译链接的套路](https://mp.weixin.qq.com/s/R1hiec0Z0T5bPHswkLNQWw)

- [Debug模式和Release模式的区别](https://mp.weixin.qq.com/s/A_XLPZ-FgYIUMHLYVum7jQ)

#### 调试系列

- [代码调试手段](https://mp.weixin.qq.com/s/wFy3EueN1oEMTKjeNBYuRg)

- [Linux如何调试内存泄漏](https://mp.weixin.qq.com/s/0JsxzsOAQfLPCSpldYkKkA)

- [内存泄漏调试方法论](https://mp.weixin.qq.com/s/K2Fvn6jDm71fdpQjix_wrg)

- [gdb使用指南](https://mp.weixin.qq.com/s/S-B2KZ7UTaIDzAgKG32VAQ)

- [如何使用gdb定位死锁问题](https://mp.weixin.qq.com/s/O4xuCcPMXG4Y9ktIn8578A)

### 操作系统

- [推荐清华老师的操作系统视频](https://www.bilibili.com/video/BV1uW411f72n?from=search&seid=7182050251415608805)

- [推荐哈工大老师的操作系统视频](https://www.bilibili.com/video/BV1d4411v7u7?from=search&seid=7182050251415608805)

- [推荐一个内核学习的视频](https://www.bilibili.com/video/BV1yD4y1m7Q9)

- [进程和线程相关知识点总结](https://mp.weixin.qq.com/s/NCl17jrOwP_A017nUqOkJQ)

- [操作系统内存管理知识点](https://mp.weixin.qq.com/s/yzvye0rJto1P7zSTh03kZQ)

- [64位系统与32位系统的区别](https://mp.weixin.qq.com/s/Ls0YAbXPHLdu7LG3VzNsTw)

- [malloc内存分配器实现原理](https://mp.weixin.qq.com/s/KKsMAYh9mgr0GEgqxKWA_g)

- [Linux 内核官方文档](https://docs.kernel.org/index.html)

- [Linux 内核源码](https://github.com/torvalds/linux)

- [Linux 内核揭秘](https://xinqiu.gitbooks.io/linux-insides-cn/content/index.html)

- [Linux 内核模块编程指南](https://sysprog21.github.io/lkmpg/)

- [Linux 内存布局与malloc底层实现分析](https://mp.weixin.qq.com/s/3bXAGR_7XLX21nkdl9dQ8Q)

### 设计模式

- [推荐一个非常好的学习设计模式的网站](https://refactoringguru.cn/design-patterns)

- [设计模式汇总](https://mp.weixin.qq.com/s/knzV1-bmrI7jhQqnhogGkw)

- [双分派设计模式](https://mp.weixin.qq.com/s/I1qXomFD1TiGnUV48DXrxw)

- [pimpl模式](https://mp.weixin.qq.com/s/LyPabf13uJ4QMwEF1rXf6A)

### Java

- [JNI如何巧妙获取env](https://mp.weixin.qq.com/s/Q7hq4BceQ3JCr3CXhbma4g)

- [JNI内存管理之Local Reference和Global Reference知识点](https://mp.weixin.qq.com/s/5Q2Exx9W5BckpI3AhzShHQ)

- [Android Native内存泄漏调试心得](https://mp.weixin.qq.com/s/AlqD2Wp2g6qUMXG9zeqEow)

- [JNI知识点](https://mp.weixin.qq.com/s/KFWYOq3QRXeyu2ygeuy5-Q)

### 算法

- [袁厨的算法小屋](https://github.com/chefyuan/algorithm-base)

- [厨子的网站](http://www.chengxuchu.com)

- [一定要猛刷leetcode](https://leetcode-cn.com/)

## 知名大学计算机系开源课程收录

- [浙江大学课程攻略共享计划](https://qsctech.github.io/zju-icicles/)

- [清华大学计算机系课程攻略](https://rekcarc-tsc-uht.readthedocs.io/en/latest/)

- [北京大学课程资料民间整理](https://lib-pku.github.io/)

- [上海交通大学课程资料分享](https://github.com/c-hj/SJTU-Courses)

- [北京邮电大学计算机考研信息汇总](https://ningzimu.github.io/See_you_in_BUPT/)

- [北京航空航天大学(北航)课程作业资料共享计划](https://github.com/TheBloodthirster/BUAA_Course_Sharing)

- [华北电力大学计算机系课程攻略](https://github.com/IammyselfYBX/NCEPU_CS_course)

## 深度学习
- [《PapersWithCode》对机器学习做了分类,检索对应的模型非常方便,这个网站包含:论文 + github实现代码 + 经典 + 最新 + 多版本对比 + 神器](https://paperswithcode.com/)
- [《动手学强化学习》 - 上海交通大学 - 课程主页](http://hrl.boyuai.com/)
- [《动手学深度学习》 - 李沐 亚马逊资深首席科学家 - 课程主页](https://courses.d2l.ai/zh-v2/)
- [ 动手学深度学习课程的 markdown 笔记和相关的 jupyter 代码](https://github.com/HIT-UG-Group/DeepLearning-MuLi-Notes)

## 科普

- [计算机为什么从0开始计数](https://mp.weixin.qq.com/s/6zAmABxH8jHy8l5r0_9Kag)

- [为什么不能include cpp](https://mp.weixin.qq.com/s/NVEZnF1HqpIMSBlw_PXwyA)

- [if-else和switch-case效率对比分析](https://mp.weixin.qq.com/s/mTik1pfNigGnVnB6oK8ilA)

## 生活

- [打工人保命指南](https://mp.weixin.qq.com/s/4hY8xM7omrVOnvexJmCehA)

- [不要为35岁焦虑](http://mp.weixin.qq.com/s?__biz=MzkyODE5NjU2Mw==&mid=2247486284&idx=1&sn=0b6109414afaf5164c5a782407bbe923&chksm=c21d39f0f56ab0e6ca8115cceb9b3774fcdbec3aab221635e2fb281be1b381d259280d30c44b&token=830665182&lang=zh_CN#rd)

- [防诈骗指南](http://mp.weixin.qq.com/s?__biz=MzkyODE5NjU2Mw==&mid=2247486676&idx=1&sn=709abc972c52ea6019f93f562da2efee&chksm=c21d3e68f56ab77eec8e6215321413f1f707f4cae8f72bdc135d58f22b88e4ce17f64f93f8e0&token=1242239139&lang=zh_CN#rd)

## 其它

- [C语言如何实现动态扩容的string](https://mp.weixin.qq.com/s/6T4LN3Qkc9OJeCQEBiivcQ)

- [音视频学习资料整理](https://mp.weixin.qq.com/s/QE-Zqd9oBQZI4T73ehITKg)

- [C++全链路追踪方案](https://mp.weixin.qq.com/s/ZZd_o_x5Ti8o8haMjG0btw)

- [开源库推荐](https://mp.weixin.qq.com/s/LSy4fnWKMEln7v9QO-aeZA)

## 机器人

- [开源机器人学习指南](https://github.com/qqfly/how-to-learn-robotics)