C++ 逐课 · 全部课次
共 366 课。可用标题搜索。
阶段 0 · C++ 基础语法
- 001 C++ 程序基本结构 🟢 入门
- 002 基本数据类型 🟢 入门
- 003 变量 🟢 入门
- 004 const 🟢 入门
- 005 constexpr 🟢 入门
- 006 consteval 🟢 入门
- 007 constinit 🟢 入门
- 008 iostream 🟢 入门
- 009 算术运算 🟢 入门
- 010 自增自减 🟢 入门
- 011 比较运算 🟢 入门
- 012 逻辑运算 🟢 入门
- 013 位运算 🟢 入门
- 014 赋值运算 🟢 入门
- 015 三目运算 🟢 入门
- 016 sizeof 🟢 入门
- 017 运算符优先级 🟢 入门
- 018 隐式类型转换 🟢 入门
- 019 C 风格转换 🟢 入门
- 020 static_cast 🟢 入门
- 021 dynamic_cast 🟢 入门
- 022 const_cast 🟢 入门
- 023 reinterpret_cast 🟢 入门
- 024 if 🟢 入门
- 025 if / else 🟢 入门
- 026 else if 🟢 入门
- 027 switch 🟢 入门
- 028 for 🟢 入门
- 029 while 🟢 入门
- 030 do while 🟢 入门
- 031 范围 for 🟢 入门
- 032 break / continue 🟢 入门
- 033 一维数组 🟢 入门
- 034 数组初始化 🟢 入门
- 035 多维数组 🟢 入门
- 036 数组与指针关系 🟢 入门
- 037 C 风格字符串 🟢 入门
- 038 std::string 🟢 入门
- 039 string_view 🟢 入门
- 040 函数定义 🟢 入门
- 041 函数声明 🟢 入门
- 042 参数传递 🟢 入门
- 043 默认参数 🟢 入门
- 044 函数重载 🟢 入门
- 045 inline 🟢 入门
- 046 递归 🟢 入门
- 047 作用域 🟢 入门
- 048 生命周期 🟢 入门
- 049 static 🟢 入门
- 050 extern 🟢 入门
- 051 thread_local 🟢 入门
- 052 #define 🟢 入门
- 053 条件编译 🟢 入门
- 054 include guard 🟢 入门
- 055 pragma once 🟢 入门
- 056 命名空间 🟢 入门
- 057 嵌套 namespace 🟢 入门
- 058 匿名 namespace 🟢 入门
- 059 typedef 🟢 入门
- 060 using 🟢 入门
- 061 typeid 🟢 入门
- 062 RTTI 🟢 入门
- 063 RVO 🟢 入门
- 064 NRVO 🟢 入门
- 065 Copy Elision 🟢 入门
阶段 1 · 指针、引用与内存
- 066 指针基础 🔵 基础
- 067 指针运算 🔵 基础
- 068 二级指针 🔵 基础
- 069 void 指针 🔵 基础
- 070 函数指针 🔵 基础
- 071 成员函数指针 🔵 基础
- 072 nullptr 🔵 基础
- 073 左值引用 🔵 基础
- 074 const 引用 🔵 基础
- 075 右值引用 🔵 基础
- 076 new 🔵 基础
- 077 delete 🔵 基础
- 078 动态数组 🔵 基础
- 079 常见内存问题 🔵 基础
- 080 this 🔵 基础
- 081 unique_ptr 🔵 基础
- 082 shared_ptr 🔵 基础
- 083 weak_ptr 🔵 基础
- 084 引用计数 🔵 基础
- 085 Stack 🔵 基础
- 086 Heap 🔵 基础
- 087 Data Segment 🔵 基础
- 088 BSS 🔵 基础
- 089 Text Segment 🔵 基础
- 090 内存对齐 🔵 基础
- 091 Placement New 🔵 基础
- 092 Allocator 🔵 基础
- 093 polymorphic_allocator 🔵 基础
阶段 2 · 类与面向对象
- 094 struct 🟠 进阶
- 095 struct 与 class 区别 🟠 进阶
- 096 enum 🟠 进阶
- 097 enum class 🟠 进阶
- 098 union 🟠 进阶
- 099 类 🟠 进阶
- 100 对象 🟠 进阶
- 101 成员变量 🟠 进阶
- 102 成员函数 🟠 进阶
- 103 访问控制 🟠 进阶
- 104 默认构造函数 🟠 进阶
- 105 带参数构造 🟠 进阶
- 106 初始化列表 🟠 进阶
- 107 委托构造 🟠 进阶
- 108 explicit 🟠 进阶
- 109 析构 🟠 进阶
- 110 拷贝构造 🟠 进阶
- 111 拷贝赋值 🟠 进阶
- 112 浅拷贝 🟠 进阶
- 113 深拷贝 🟠 进阶
- 114 移动构造 🟠 进阶
- 115 移动赋值 🟠 进阶
- 116 std::move 🟠 进阶
- 117 Rule of Three 🟠 进阶
- 118 Rule of Five 🟠 进阶
- 119 Rule of Zero 🟠 进阶
- 120 Getter / Setter 🟠 进阶
- 121 基本继承 🟠 进阶
- 122 三种继承方式 🟠 进阶
- 123 多继承 🟠 进阶
- 124 菱形继承 🟠 进阶
- 125 虚继承 🟠 进阶
- 126 virtual 🟠 进阶
- 127 override 🟠 进阶
- 128 final 🟠 进阶
- 129 纯虚函数 🟠 进阶
- 130 抽象类 🟠 进阶
- 131 虚析构函数 🟠 进阶
- 132 动态绑定 🟠 进阶
- 133 虚函数表 🟠 进阶
- 134 operator 🟠 进阶
- 135 spaceship 运算符 🟠 进阶
- 136 friend function 🟠 进阶
- 137 friend class 🟠 进阶
阶段 3 · STL 与数据结构
- 138 vector 🔴 提高
- 139 array 🔴 提高
- 140 deque 🔴 提高
- 141 list 🔴 提高
- 142 forward_list 🔴 提高
- 143 set 🔴 提高
- 144 multiset 🔴 提高
- 145 map 🔴 提高
- 146 multimap 🔴 提高
- 147 unordered_set 🔴 提高
- 148 unordered_map 🔴 提高
- 149 unordered_multiset 🔴 提高
- 150 unordered_multimap 🔴 提高
- 151 stack 🔴 提高
- 152 queue 🔴 提高
- 153 priority_queue 🔴 提高
- 154 Iterator 🔴 提高
- 155 begin / end 🔴 提高
- 156 const_iterator 🔴 提高
- 157 reverse iterator 🔴 提高
- 158 迭代器分类 🔴 提高
- 159 排序 🔴 提高
- 160 查找 🔴 提高
- 161 统计 🔴 提高
- 162 修改 🔴 提高
- 163 删除相关 🔴 提高
- 164 比较 🔴 提高
- 165 数值算法 🔴 提高
- 166 std::ranges 🔴 提高
- 167 views 🔴 提高
- 168 std::span 🔴 提高
- 169 bitset 🔴 提高
- 170 `<bit>` 🔴 提高
- 171 数组 🔴 提高
- 172 动态数组 🔴 提高
- 173 单链表 🔴 提高
- 174 双链表 🔴 提高
- 175 循环链表 🔴 提高
- 176 栈 🔴 提高
- 177 队列 🔴 提高
- 178 双端队列 🔴 提高
- 179 Hash Table 🔴 提高
- 180 Heap 🔴 提高
- 181 Binary Tree 🔴 提高
- 182 Binary Search Tree 🔴 提高
- 183 AVL Tree 🔴 提高
- 184 Red-Black Tree 🔴 提高
- 185 Trie 🔴 提高
- 186 Union Find 🔴 提高
- 187 Graph 🔴 提高
- 188 时间复杂度 🔴 提高
- 189 空间复杂度 🔴 提高
- 190 排序 🔴 提高
- 191 查找 🔴 提高
- 192 递归 🔴 提高
- 193 分治 🔴 提高
- 194 贪心 🔴 提高
- 195 动态规划 🔴 提高
- 196 回溯 🔴 提高
- 197 BFS 🔴 提高
- 198 DFS 🔴 提高
- 199 最短路径 🔴 提高
- 200 最小生成树 🔴 提高
- 201 拓扑排序 🔴 提高
阶段 4 · Modern C++
- 202 类型推导 🟣 深入
- 203 auto 引用 🟣 深入
- 204 decltype 🟣 深入
- 205 decltype(auto) 🟣 深入
- 206 lvalue 🟣 深入
- 207 rvalue 🟣 深入
- 208 forwarding reference 🟣 深入
- 209 std::forward 🟣 深入
- 210 基础 lambda 🟣 深入
- 211 捕获 🟣 深入
- 212 mutable 🟣 深入
- 213 泛型 lambda 🟣 深入
- 214 模板 lambda 🟣 深入
- 215 Resource Acquisition Is Initialization 🟣 深入
- 216 std::optional 🟣 深入
- 217 std::variant 🟣 深入
- 218 std::any 🟣 深入
- 219 std::tuple 🟣 深入
- 220 pair 🟣 深入
- 221 结构化绑定 🟣 深入
- 222 Functor 🟣 深入
- 223 std::function 🟣 深入
- 224 std::bind 🟣 深入
- 225 std::format 🟣 深入
- 226 source_location 🟣 深入
阶段 5 · 模板与泛型
阶段 6 · 并发与工程化
- 243 try 🟣 深入
- 244 throw 🟣 深入
- 245 catch 🟣 深入
- 246 标准异常 🟣 深入
- 247 noexcept 🟣 深入
- 248 ifstream 🟣 深入
- 249 ofstream 🟣 深入
- 250 fstream 🟣 深入
- 251 filesystem 🟣 深入
- 252 chrono 🟣 深入
- 253 random 🟣 深入
- 254 std::thread 🟣 深入
- 255 join 🟣 深入
- 256 detach 🟣 深入
- 257 jthread 🟣 深入
- 258 mutex 🟣 深入
- 259 lock_guard 🟣 深入
- 260 unique_lock 🟣 深入
- 261 scoped_lock 🟣 深入
- 262 shared_mutex 🟣 深入
- 263 条件变量 🟣 深入
- 264 atomic 🟣 深入
- 265 memory_order 🟣 深入
- 266 std::future 🟣 深入
- 267 std::promise 🟣 深入
- 268 std::async 🟣 深入
- 269 packaged_task 🟣 深入
- 270 coroutine 🟣 深入
- 271 异常安全 🟣 深入
- 272 头文件 🟣 深入
- 273 Thread Pool 🟣 深入
- 274 Producer Consumer 🟣 深入
- 275 Lock-Free 🟣 深入
- 276 Wait-Free 🟣 深入
- 277 CAS 🟣 深入
- 278 ABA Problem 🟣 深入
- 279 Spin Lock 🟣 深入
- 280 Deadlock 🟣 深入
- 281 Livelock 🟣 深入
- 282 Starvation 🟣 深入
- 283 多文件项目 🟣 深入
- 284 CMake 🟣 深入
- 285 Make 🟣 深入
- 286 Ninja 🟣 深入
- 287 Git 🟣 深入
- 288 单元测试 🟣 深入
- 289 static analysis 🟣 深入
- 290 format 🟣 深入
- 291 Profiling 🟣 深入
阶段 7 · 底层原理与方向
- 292 预处理阶段 🟣 深入
- 293 编译阶段 🟣 深入
- 294 汇编阶段 🟣 深入
- 295 链接 🟣 深入
- 296 静态库 🟣 深入
- 297 动态库 🟣 深入
- 298 One Definition Rule 🟣 深入
- 299 链接属性 🟣 深入
- 300 Name Mangling 🟣 深入
- 301 ABI 🟣 深入
- 302 Modules 🟣 深入
- 303 Singleton 🟣 深入
- 304 Factory 🟣 深入
- 305 Abstract Factory 🟣 深入
- 306 Builder 🟣 深入
- 307 Prototype 🟣 深入
- 308 Adapter 🟣 深入
- 309 Decorator 🟣 深入
- 310 Facade 🟣 深入
- 311 Proxy 🟣 深入
- 312 Composite 🟣 深入
- 313 Bridge 🟣 深入
- 314 Strategy 🟣 深入
- 315 Observer 🟣 深入
- 316 Command 🟣 深入
- 317 State 🟣 深入
- 318 Template Method 🟣 深入
- 319 Chain of Responsibility 🟣 深入
- 320 Visitor 🟣 深入
- 321 Iterator 🟣 深入
- 322 SOLID 🟣 深入
- 323 DRY 🟣 深入
- 324 KISS 🟣 深入
- 325 YAGNI 🟣 深入
- 326 Composition over inheritance 🟣 深入
- 327 Cache 🟣 深入
- 328 Cache locality 🟣 深入
- 329 Cache Line 🟣 深入
- 330 False Sharing 🟣 深入
- 331 Branch Prediction 🟣 深入
- 332 SIMD 🟣 深入
- 333 数据导向设计 🟣 深入
- 334 内存池 🟣 深入
- 335 Object Pool 🟣 深入
- 336 Small Object Optimization 🟣 深入
- 337 Small String Optimization 🟣 深入
- 338 编译器优化 🟣 深入
- 339 Inline Optimization 🟣 深入
- 340 Dead Code Elimination 🟣 深入
- 341 Constant Folding 🟣 深入
- 342 Loop Unrolling 🟣 深入
- 343 Vectorization 🟣 深入
- 344 Link Time Optimization 🟣 深入
- 345 Debugger 🟣 深入
- 346 AddressSanitizer 🟣 深入
- 347 UndefinedBehaviorSanitizer 🟣 深入
- 348 ThreadSanitizer 🟣 深入
- 349 LeakSanitizer 🟣 深入
- 350 UB 🟣 深入
- 351 Socket 🟣 深入
- 352 TCP 🟣 深入
- 353 UDP 🟣 深入
- 354 I/O 模型 🟣 深入
- 355 异步网络 🟣 深入
- 356 Ownership 🟣 深入
- 357 Lifetime 🟣 深入
- 358 RAII 🟣 深入
- 359 Value Semantics 🟣 深入
- 360 Reference Semantics 🟣 深入
- 361 Move Semantics 🟣 深入
- 362 Zero-Cost Abstraction 🟣 深入
- 363 Static Polymorphism 🟣 深入
- 364 Dynamic Polymorphism 🟣 深入
- 365 Compile-Time Programming 🟣 深入
- 366 Resource Management 🟣 深入