CppLearning VSCode WSL2 环境调试运行学习 C++ 代码 视 C++ 为一个语言联邦: C 面向对象 模板编程,C++ 泛型编程的部分 STL: 容器、迭代器、算法、函数对象 基础核心 进程的虚拟地址空间内存划分和布局 函数的调用堆栈详细过程 程序编译链接原理 C++ 基础 形参带默认值函数 inline 函数 函数重载 const new 和 delete C++ 面向对象——基础 OOP、this 指针 OOP 实现顺序栈 构造函数和析构函数 对象深拷贝和浅拷贝 构造函数的初始化列表 普通、static、const 三类成员方法 指向类成员 (成员变量、成员方法) 的指针 C++ 面向对象——运算符重载 Complex 类 string 类 string 类的容器迭代器 vector 容器的迭代器实现 迭代器的失效 C++ 面向对象——继承与多态 继承的本质、原理 派生类的构造过程 重载、隐藏、覆盖 虚函数、静态绑定、动态绑定 (多态、vfptr 和 vftable) 虚析构函数 虚函数和动态绑定 多态 继承、多态常见笔试面试题 C++ 多重继承 C++ 模板编程 函数模板 类模板 vector 容器模板实现 容器空间配置器 allocator C++ STL 基础 简介 顺序容器对比:vector、deque、list 容器适配器 关联容器:无序、有序 迭代器 函数对象 泛型算法和绑定器 C++ STL 绑定器与函数对象 C++ STL 中的绑定器 bind 和 function 机制 muduo 网络库线程池 模板的完全特例化、非完全(部分)特例化 模板的实参推演 function 函数对象类型的实现原理 lamda 表达式 lamda 表达式的应用实践 C++ 高级进阶 C++ 对象优化 C++ 右值引用 C++ 智能指针 C++ 强弱智能指针应用实例 C++11 特性 auto foreach 智能指针 lamda 表达式 右值引用 std::move 移动语义 std::forward 类型完美转发 std::thread 线程库 线程互斥操作 线程同步通信操作 C++ 语言级别的多线程编程 thread 类编写 C++ 多线程程序 线程间互斥 线程间同步通信 总结 原子类型 C++ 设计模式 单例模式 简单工厂 工厂方法 抽象工厂 代理模式 装饰器模式 适配器模式 观察者模式