不少人学 C++ 卡在同一个地方:语法书翻完了,能写点小练习,但一看到真实项目里的类层次、模板报错、对象生命周期就不知道从哪下手。这套八部曲针对的正是这个断层——它不教你怎么打印 Hello World,而是讲清楚 C++ 在工程里到底怎么被用起来。
它解决的是哪类问题
课程内容围绕 C++ 的几个核心机制展开:面向对象的设计思路、继承与多态的实际写法、模板与泛型的组织方式,以及标准库中容器、算法、迭代器的配合使用。这些恰好是工作中最常遇到、也最容易写错的部分。比如什么时候该用虚函数、什么时候用模板特化、容器的选择会影响什么,这些问题在项目里天天出现,但很少有资料把它们串起来讲。学完之后你面对一个中等规模的需求,能自己判断该用什么结构去组织代码,而不是照着别人的写法抄一遍却说不清为什么。
另一个实际价值是看懂别人的代码。接手一个已有项目时,最怕的是看不懂类之间的关系和模板的层层嵌套。这部分内容能帮你建立一套拆解的思路,遇到复杂声明和继承链时知道从哪一层开始读。
适合什么基础,先看哪几块
前提是已经会写基本的 C++ 程序:变量、循环、函数、简单的类定义,这些如果还不熟,直接看会比较吃力。有其它语言基础、想转到 C++ 的人也可以跟,但需要边看边补语法细节。
建议的进入顺序是先看面向对象和类设计相关的部分,把封装、继承、多态这几件事在实际代码里的样子弄清楚;再看模板与泛型,这部分难度上升明显,放在有了一定类设计感觉之后更顺;标准库的容器与算法可以穿插着看,边学边用在练习里。不要一上来就啃模板,容易劝退。
怎么配合练习,学完能做什么
这套资料是视频为主,配了随堂的笔记文件。比较有效的用法是:每看完一段,先别急着往下走,把视频里的示例代码自己敲一遍,然后改几个地方——换个容器、加一层继承、把普通函数改成模板——看编译报错怎么变。报错信息本身就是很好的学习材料,能帮你建立对类型系统的直觉。
笔记适合当复习提纲用,看完一节后对照笔记回忆关键点,想不起来的再回看对应片段,比反复整段重看省时间。
学完能独立做的事大致是:独立设计一个包含多个类、有继承关系的小型模块;读懂中等复杂度的 C++ 代码;用标准库容器和算法完成常见的数据处理任务;遇到模板相关的编译错误时能定位到问题所在。这些能力足以应付日常开发中的多数场景,也是继续深入底层或性能优化的起点。如果目标是写高性能库或者做底层开发,这套内容只是打底,后面还需要专门补内存模型和并发方面的知识。
课程目录
侯捷老师C++ 全系列八部曲 - 手把手教你进阶系列 C++???????�� ?????? ??????????????????????????C++???????????????????????????????? ? ????? ?????????????????��?????????????????C++???????? ?��????? ? ?????????? ? ?????????? ? C++?��????????? �γ�Ŀ¼ ? 08?????????????????? 7.???????????????????.mp4 [311.5 MB] 14.???????????????????????????????cunWorkNotes ??????.mp4 [77.5 MB] 5.????????.mp4 [358.3 MB] 3.??????????????.mp4 [222.1 MB] 9.??????????????????.mp4 [199.2 MB] 2.??????????URL????.mp4 [295.3 MB] QQ???20210129090328.png [14.8 KB] 10.????????.mp4 [458.6 MB] 6.??????????????????.mp4 [305.9 MB] 1.????????.mp4 [252.5 MB] 13.???????????2.mp4 [526.7 MB] 4.??????????????.mp4 [235.9 MB] 8.???????????????????.mp4 [323.7 MB] 11.???????????????.mp4 [518.6 MB] ? 09 - ?????? ??????????????????????????????CunworkNotes??.mp4 [139.7 MB] ???????????????????????.mp4 [231.4 MB] ???????????????????????.mp4 [195.5 MB] ? 07?????????????????? 3.????????????????????????CunWorkNotes??.mp4 [86.9 MB] 16.??????.mp4 [58.5 MB] 19.?????????????????????????????CunWorKNotes??.mp4 [72.8 MB] 10.???????????.mp4 [71.4 MB] 12.???????.mp4 [113.5 MB] 11.???????????????????????cunWorkNotes ??????.mp4 [84.2 MB] 20.??????????????????????????CunWorknotes?? .mp4 [92.0 MB] 13.???????????.mp4 [53.8 MB] 5.?????????.mp4 [36.7 MB] 1.???????????????????.mp4 [80.3 MB] 8.??????.mp4 [76.4 MB] 18.??????.mp4 [115.1 MB] 14.????????????.mp4 [79.3 MB] 6.??????????.mp4 [106.8 MB] 7.?????????.mp4 [31.4 MB] 2.???????????????.mp4 [47.9 MB] 15.???????????.mp4 [81.8 MB] 17.???????.mp4 [92.1 MB] 9.???????????.mp4 [81.3 MB] 4.???????????????.mp4 [78.8 MB] QQ???20210129085911.png [73.8 KB] 21.??????????.mp4 [57.6 MB] ? 06 - ??? C++ Startup ?????C++ ?????????????? ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P9 09 main ??????????????????????????????CunWorKNotes??.MP4 [667.4 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P2 02 ???? Startup code ???????main ?????????? Call??.MP4 [70.1 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P12 12 c init Startup????????????????CunWorkNotes??.MP4 [344.4 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P3 03 Startup code ?????.MP4 [97.7 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P6 06 ??????A??????.MP4 [288.6 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P10 10 HeapAlloc ????????.MP4 [338.6 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P1 01 ?????????? Startup code.MP4 [255.5 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P8 08 ??????A?????.MP4 [199.6 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P4 04 heap init Startup?????????????.MP4 [291.2 MB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P7 07 ??????A??????.MP4 [232.9 MB] ?????_20210202213957.png [48.7 KB] ???? 1080P ??GeekBand????? C++ Startup ?????C++ ???????????????? P5 05 ??????A?????.MP4 [214.1 MB] ? 04 - ??? - C++?????C++11&14 28. ???? array???????????????CunWorknotes?? .mp4 [61.8 MB] 26. Move-aware class ???????????????.mp4 [255.2 MB] 13. decltype????????????????cunWorkNotes ??????.mp4 [351.1 MB] 23. Rvalue references and Move Semantics????????CunWorkNotes??.mp4 [366.3 MB] 25. ????? Move-aware class??????????????????CunWorkNoteS??.mp4 [227.1 MB] 29. ???? Hashtable.mp4 [113.7 MB] 16. Variadic Templates 2.mp4 [109.0 MB] 18. Variadic Templates 4.mp4 [85.7 MB] 12. Type Alias, noexcept, override, final????????CunWorkNotes??.mp4 [398.2 MB] 11. Template template parameter.mp4 [184.2 MB] 1. ????????????????????????????????CunworkNotes??.mp4 [373.9 MB] 17. Variadic Templates 3.mp4 [121.3 MB] 24. Perfect Forwarding.mp4 [189.3 MB] 14. lambdas.mp4 [567.8 MB] 22. ????????????.mp4 [56.4 MB] 21. Variadic Templates_7 & C++ Keywords.mp4 [121.5 MB] 20. Variadic Templates 6.mp4 [314.5 MB] 3. Spaces in Template Expression??nullptr and std--nullptr_t??Automatic Type Deduction with auto.mp4 [189.7 MB] 2. Variadic Templates.mp4 [379.6 MB] 19. Variadic Templates 5.mp4 [151.0 MB] 6. Initializer_list?????.mp4 [324.0 MB] 9. =default, =delete.mp4 [406.3 MB] 27. ?????????????_????????? ?? ??????????.mp4 [48.8 MB] 8. Range??based for statement.mp4 [174.4 MB] QQ???20210129002955.png [66.1 KB] 10. Alias Template.mp4 [384.6 MB] 4. Unifrom Initialization.mp4 [224.5 MB] 7. Explicit for ctors taking more than one argument.mp4 [139.6 MB] 30. Hash function.mp4 [330.4 MB] 5. Initializer_list?????.mp4 [67.4 MB] 15. Variadic Templates 1.mp4 [190.2 MB] 31. Tuple.mp4 [261.1 MB] ? 03 - ??? - C++????? 25.????????????????????????CunWorkNoteS??.mp4 [112.2 MB] 4.??????.mp4 [140.3 MB] 15.??????????????CunWorkNotes??.mp4 [71.7 MB] 19.?????.mp4 [66.6 MB] 24.??????.mp4 [107.3 MB] 9.?????.mp4 [148.9 MB] 16.??????.mp4 [95.1 MB] 11.??????.mp4 [105.8 MB] 7.????.mp4 [147.5 MB] 20.????????????????????????CunWorKNotes??.mp4 [81.2 MB] 5.???????.mp4 [231.3 MB] 3.??????.mp4 [555.6 MB] 12.??????.mp4 [133.1 MB] 23.??????.mp4 [71.7 MB] 6.?????.mp4 [239.5 MB] 21.??????.mp4 [61.0 MB] 10.?????.mp4 [75.9 MB] 14.??????.mp4 [58.5 MB] 17.??????.mp4 [59.7 MB] 1.????????.mp4 [422.7 MB] 18.????.mp4 [104.8 MB] 8.???????? .mp4 [187.5 MB] 22.?????.mp4 [73.8 MB] 2.?????????????.mp4 [429.8 MB] 26.????????.mp4 [61.2 MB] 13.?????.mp4 [72.3 MB] 1.png [47.7 KB] ? 05 - ??? - C++??????????_60_??? 38.SBH???????-????+???????????????1??????????????????cunWorkNotes ??????.mp4 [776.7 MB] 30.G2.9std_alloc?????????.mp4 [562.1 MB] 37.VC6??????5??.mp4 [431.7 MB] 4.??????????newdelete expression(??).mp4 [360.7 MB] 13.Per-class allocator 2.mp4 [403.8 MB] 19.BC5??????????????????????????????CunWorkNoteS??.mp4 [60.1 MB] 32.VC6??VC10??malloc??????????????????cunWorkNotes ??????.mp4 [527.6 MB] 56.??Const??????????????????CunWorkNoteS??.mp4 [591.5 MB] 23.G2.9std alloc??????????????????CunworknoteS??.mp4 [572.4 MB] 2.?????????????.mp4 [315.3 MB] 40.SBH???????-????+???????????????3????????????????????CunworkNotes??.mp4 [285.5 MB] 58.??????????????????????CunWorknotes?? .mp4 [75.8 MB] 49.Loki_allocator????????????????CunWorknotes?? .mp4 [233.9 MB] 11.???????????????????????????CunWorknotes?? .mp4 [435.3 MB] 53.G4.9 debug_allocator.mp4 [280.1 MB] 3.???????????????.mp4 [381.6 MB] 43.VC6????????????.mp4 [496.4 MB] 34.VC6??????2??.mp4 [231.9 MB] 45.??????????classes????.mp4 [298.7 MB] 35.VC6??????3??.mp4 [248.7 MB] 17.VC6 malloc().mp4 [258.4 MB] 20.G2.9?????????????.mp4 [104.9 MB] 18.VC6?????????????.mp4 [108.6 MB] 16.New Handler.mp4 [418.5 MB] 36.VC6??????4??.mp4 [357.8 MB] 29.G2.9std_alloc????????????.mp4 [915.1 MB] 8.Replacement new.mp4 [158.5 MB] 5.??????????newdelete expression(??).mp4 [112.7 MB] 59.???.mp4 [648.9 MB] 9.????.mp4 [471.1 MB] 6.??????????newdelete expression(??).mp4 [195.9 MB] 39.SBH???????-????+???????????????2??.mp4 [248.9 MB] 15.Macro for static allocator.mp4 [214.4 MB] 44.VC6????????????.mp4 [285.0 MB] 28.G2.9std_alloc?????????????.mp4 [251.7 MB] 54.bitmap_allocator(??).mp4 [606.0 MB] 27.G2.9std_alloc????????????.mp4 [682.0 MB] 57.????new,delete&.mp4 [206.2 MB] 42.VC6??????free(p)?????.mp4 [157.2 MB] 47.class FixedAllocator?????????.mp4 [479.5 MB] 60.Basic string???new??extra????????????.mp4 [105.0 MB] 14.Static allocator.mp4 [399.0 MB] 48.class FixedAllocator?????????.mp4 [458.8 MB] 31.G4.9pull allocator???????.mp4 [521.4 MB] 7.Array new.mp4 [568.4 MB] 21.G2.9std_allocVSG4.9_pull_alloc.mp4 [108.1 MB] 25.G2.9std_alloc??????06-10.mp4 [278.6 MB] 24.G2.9std_alloc??????01-05.mp4 [462.1 MB] 52.G4.9array_allocator.mp4 [291.2 MB] 1.Overview.mp4 [496.8 MB] 46.Loki_allocator??????.mp4 [431.6 MB] 26.G2.9std_alloc??????11-13.mp4 [469.7 MB] 55.bitmap_allocator?????.mp4 [401.5 MB] 41.SBH???????-????+???????????????4??.mp4 [245.8 MB] 12.Per-class allocator.mp4 [459.0 MB] 51.VS2013?????????&G4.9???????????new_allocator???G4.9malloc.mp4 [161.5 MB] 22.G4.9pull alloc????.mp4 [297.7 MB] 33.VC6??????1??.mp4 [374.4 MB] 10.????????????.mp4 [201.6 MB] 50.GNU C++??allocators??????.mp4 [787.6 MB] QQ???20210129003010.png [71.4 KB] ? 02 - ??? - STL??????????? 2. STL?????????????.mp4 [508.5 MB] 44. cout??????????????????CunWorkNoteS??.mp4 [162.8 MB] 41. Tuple ????.mp4 [727.1 MB] 13. ??????list???????????????????????CunworknoteS??.mp4 [378.6 MB] 33. Binder2nd.mp4 [580.8 MB] 37. inserter.mp4 [213.4 MB] 45. movable??????deque???????????????????????????CunworkNotes??.mp4 [449.5 MB] 32. ???????Adapter????????CunWorkNotes??.mp4 [183.4 MB] 6. ?????????????????????.mp4 [447.2 MB] 2.??.mp4 [110.3 MB] 1. ???headers?????????????.mp4 [273.4 MB] 43. type traits ???.mp4 [384.2 MB] 35 bind.mp4 [417.0 MB] QQ???20210129002938.png [70.9 KB] 11. ??????.mp4 [525.1 MB] 34. not1.mp4 [126.5 MB] 8. ????????? (VC, GCC).mp4 [144.9 MB] 38. ostream_iterator.mp4 [254.9 MB] 15. ???????????????Iterator Traits???????????.mp4 [377.8 MB] 7. ???????????.mp4 [181.2 MB] 36. reverse_iterator.mp4 [160.5 MB] 20. RB-tree ??????.mp4 [556.0 MB] 25. hash_set??hash_multiset, hash_map??hash_multimap????.mp4 [419.3 MB] 18. deque??queue?? stack???????????.mp4 [351.3 MB] 17. array??forward_list??????.mp4 [133.0 MB] 40. ????????hash function.mp4 [791.5 MB] 24. hashtable???????????.mp4 [276.2 MB] 28. ???????????category??.mp4 [369.9 MB] 42. type traits.mp4 [598.9 MB] 4. ??????????????????????.mp4 [252.5 MB] 10. ????????????????????and???(????, ????, ????).mp4 [367.9 MB] 16. vector??????.mp4 [366.8 MB] 27. ???????.mp4 [80.7 MB] 22. map??multimap??????.mp4 [319.2 MB] 14. ??????list?????.mp4 [188.5 MB] 12. ??????????????????.mp4 [94.0 MB] 21. set??multiset??????.mp4 [256.0 MB] 29. ??????????category???????????.mp4 [533.2 MB] 31. ??????????????.mp4 [351.6 MB] 19. deque??queue?? stack???????????.mp4 [538.3 MB] 3. ?????????????????????.mp4 [500.3 MB] 26. unordered????????.mp4 [86.5 MB] 23. hashtable???????????.mp4 [419.3 MB] 5. ??????????????????????.mp4 [395.6 MB] 30. ?????????????11???????.mp4 [584.3 MB] 39. istream_iterator.mp4 [346.9 MB] 46. ???????.mp4 [468.6 MB] 9. OOP (?????????) vs. GP (???????.mp4 [242.9 MB] ? 01 - ??? - C++??????????????????????????? ? 01??C++???????????????? 1.C++?????.mp4 [186.2 MB] 4.?????????????????????CunWorkNotes??.mp4 [539.7 MB] 8.????????????.mp4 [565.1 MB] 5.???????????????????.mp4 [751.6 MB] 3.??????.mp4 [375.7 MB] 6.???Complex?????????.mp4 [383.2 MB] 9.???String?????????.mp4 [362.7 MB] 13.?????????.mp4 [530.7 MB] 2.?????????????.mp4 [306.4 MB] 11.???????.mp4 [553.2 MB] 12.??D??????.mp4 [509.2 MB] 7.?????????????????????????????.mp4 [464.4 MB] 10.???????????????????????????.mp4 [468.8 MB] ? 02??C++???????????????? namespace????? 6??????????????????CunworknoteS??.mp4 [132.6 MB] Funtion Template 8.mp4 [107.2 MB] conversion function2.mp4 [321.8 MB] ???????? 14.mp4 [800.1 MB] ????Dynamic Binding 18.mp4 [613.5 MB] Member Template 9.mp4 [330.5 MB] ????????? 12.mp4 [391.6 MB] function-like classes 5.mp4 [418.7 MB] ????this 18.mp4 [300.7 MB] Operator new??operator delete.. 21.mp4 [147.1 MB] Reference 15.mp4 [691.0 MB] non-explicit one argument constructor 3.mp4 [562.6 MB] ????new(),delete()$??? 23.mp4 [445.6 MB] ????C++????? 13.mp4 [376.4 MB] Basic_String???new(extra)?????????? 24.mp4 [112.4 MB] specialization 10.mp4 [201.6 MB] class template 7.mp4 [74.3 MB] ????1.mp4 [429.6 MB] ????vptr??vtbl 17.mp4 [775.4 MB] ??????? 11.mp4 [177.5 MB] ????&????????????????? 16.mp4 [415.6 MB] pointer-like classes 4.mp4 [634.6 MB] ????New,Delete 20.mp4 [72.9 MB] ????vptr??vtbl 18.mp4 [167.3 MB] ??? 22.mp4 [311.5 MB] ?????? C++?????? ??????? ???????? ѧϰ�ջ� ????C++?????????? ????????????? ????????C++?��?? ???????? ????????????????






