1. 基础知识
- 基本语法
- 注释
- 标识符和关键字
- 数据类型(整型、浮点型、字符型、布尔型等)
- 变量声明和初始化
- 常量
- 运算符(算术、关系、逻辑、位运算等)
- 输入输出(
cin
和 cout
)
2. 控制结构
- 条件语句
- 循环语句
for
循环while
循环do-while
循环- 循环控制语句(
break
, continue
, goto
)
3. 函数
- 函数定义和调用
- 函数声明和定义
- 参数传递(传值、传引用、默认参数)
- 函数重载
- 内联函数
- 递归函数
4. 数组和字符串
- 数组
- 一维数组
- 多维数组
- 动态数组(使用
new
和delete
)
- 字符串
- 字符串常量
- 字符串处理函数(
strlen
, strcpy
, strcat
, strcmp
等) std::string
类的使用
5. 指针和引用
- 指针
- 指针的声明和初始化
- 指针运算
- 指针和数组
- 指针和函数
- 动态内存管理(
new
和delete
)
- 引用
6. 类和对象
- 类的定义
- 类的声明和定义
- 成员变量和成员函数
- 访问控制(
public
, private
, protected
)
- 对象
- 对象的声明和初始化
- 对象的构造和析构
- 构造函数和析构函数
- 对象的拷贝构造函数
- 对象的赋值运算符重载
- 静态成员
7. 继承和多态
- 继承
- 单继承和多继承
- 基类和派生类
- 继承方式(公有、私有、保护)
- 虚函数
- 抽象类
- 多态
- 动态绑定
- 虚函数表
- 运行时类型识别(
typeid
, dynamic_cast
)
8. 模板
9. 标准库
- STL(标准模板库)
- 容器(
vector
, list
, map
, set
等) - 迭代器
- 算法(
sort
, find
, copy
等) - 适配器(
stack
, queue
, priority_queue
)
- 其他标准库
- 文件操作(
fstream
) - 时间和日期(
ctime
, chrono
) - 异常处理(
try
, catch
, throw
) - 智能指针(
unique_ptr
, shared_ptr
, weak_ptr
)
10. 高级主题
- 内存管理
- RAII(Resource Acquisition Is Initialization)
- 智能指针
- 内存泄漏检测
- 并发编程
- 线程(
std::thread
) - 互斥锁(
std::mutex
) - 条件变量(
std::condition_variable
) - 线程同步(
std::atomic
)
- 元编程
- 编译时计算
- 类型特质(
std::is_integral
, std::is_pointer
等) - SFINAE(Substitution Failure Is Not An Error)
11. 项目实践
- 小型项目
- 中型项目
- 简单的图形用户界面(使用Qt或wxWidgets)
- 网络聊天室(使用Socket编程)
- 数据库管理系统(使用SQLite或其他数据库)
12. 最佳实践和设计模式
- 编码规范
- 设计模式
- 创建型模式(单例模式、工厂模式、建造者模式)
- 结构型模式(适配器模式、装饰器模式、代理模式)
- 行为型模式(观察者模式、策略模式、命令模式)