C++ 课程大纲

基础入门

  • C++ 简介和历史
  • 环境搭建 (编译器选择和安装)
  • 创建第一个C++程序 (Hello World)
  • 基本语法和数据类型
  • 变量、常量和运算符

核心概念

  • 函数和函数重载
  • 控制流 (if-else, switch, for, while)
  • 数组和字符串
  • 指针和引用
  • 结构体和类

面向对象编程

  • 类和对象
  • 封装、继承和多态
  • 构造函数和析构函数
  • 虚函数和抽象类
  • 运算符重载

高级特性

  • 模板和泛型编程
  • 异常处理
  • 命名空间
  • 智能指针
  • Lambda 表达式

标准库

  • 输入输出流 (iostream)
  • 容器 (vector, list, map)
  • 算法库
  • 字符串处理 (string)
  • 多线程支持 (thread)

内存管理

  • 动态内存分配 (new 和 delete)
  • 内存泄漏和调试技巧
  • 智能指针详解 (unique_ptr, shared_ptr, weak_ptr)
  • 自定义内存分配器

现代C++特性

  • C++11/14/17/20 新特性概览
  • 移动语义和右值引用
  • auto 和 decltype
  • 范围for循环
  • 初始化列表

设计模式和最佳实践

  • 常用设计模式在C++中的实现
  • SOLID原则
  • 代码重构技巧
  • 性能优化策略

项目实战

  • 控制台应用程序
  • 图形用户界面 (GUI) 应用
  • 网络编程基础

工具和资源

  • 版本控制 (Git)
  • 构建系统 (CMake)
  • 单元测试框架 (Google Test)
  • 代码文档生成 (Doxygen)
  • 社区资源和推荐书籍

高级主题

  • 元编程和模板元编程
  • C++/CLI 和与其他语言的交互
  • 并行编程和并发
  • 嵌入式系统中的C++