Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chengxumiaodaren/cpp-learning
https://github.com/chengxumiaodaren/cpp-learning
Last synced: 25 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/chengxumiaodaren/cpp-learning
- Owner: chengxumiaodaren
- Created: 2021-04-02T12:52:23.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-01-07T14:58:24.000Z (10 months ago)
- Last Synced: 2024-10-01T15:01:34.667Z (about 1 month ago)
- Language: C++
- Size: 8.74 MB
- Stars: 2,779
- Watchers: 56
- Forks: 435
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- StarryDivineSky - chengxumiaodaren/cpp-learning
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)