跳转到内容

C++ 语言

100% developed
来自维基教科书,开放的书籍,开放的世界
C++ 语言
对 C++ 编程语言的全面且分层的描述

这本维基教科书描述了 C++ 编程语言。

感谢您阅读这本维基教科书!

  1. 概述
  2. 预处理
    1. 词法分析
    2. 预处理字符串
    3. 编译时常量
    4. 编译时断言
    5. 条件编译
  3. 命名空间
    1. 命名空间快捷方式
    2. 嵌套
    3. 跨文件拆分
    4. 命名和未命名
  4. 类型
    1. 匈牙利前缀
    2. 布尔值
    3. 字面量
      1. 财务千位分隔符
      2. 二进制和十六进制
      3. 自定义字面量
    4. 位表示
      1. 字节排序
      2. 负值
      3. 位移位
      4. 非字符字节
      5. 位标志
    5. 最大值
      1. 溢出
      2. INT_MAX
    6. 转换
      1. 提升小整数
      2. 强制转换
      3. 类型转换
    7. 枚举
    8. 快捷方式
      1. 模板化的 typedef
      2. 从另一个变量
      3. 从初始化
      4. 从返回值语句
      5. 尾部返回值类型
    9. 变体
      1. 任意变体
      2. 模板化的变体
      3. 可选值
    10. RTTI:运行时类型信息
  5. 变量
    1. 生命周期和作用域
    2. 初始化
    3. 统一初始化
    4. 在没有构造函数的情况下初始化
    5. 分解自动类型
    6. 在定义类型时定义
  6. 间接引用
    1. 指针
    2. 类型化的 NULL
    3. 数组
    4. 引用变量
    5. 右值引用
      1. 移动语义
      2. 从 this 移动
      3. 完美转发
    6. 智能指针
      1. 来自原始指针的风险
      2. 唯一所有权
      3. 共享所有权
      4. 所有权循环
      5. 拥有一个数组
      6. 指向基类的指针
      7. 返回 this
      8. 智能编译器临时变量
      9. 自定义销毁
      10. 模板参数
  7. 表达式
    1. 优先级
    2. 赋值链
  8. 程序流程
    1. 循环
      1. 基本循环
      2. 循环遍历集合
    2. break 语句
      1. 嵌套循环中的 break
      2. switch 中的穿透
    3. 返回值
    4. 参数
      1. 默认参数
      2. 未使用的参数
      3. 可变数量的参数
    5. 函数重载
      1. 区分标准
      2. 跨继承
    6. 函数指针
    7. 弃用函数
  9. 对象
    1. 可访问性
    2. 不需要的编译器生成的函数
    3. 构造函数
      1. 排序
      2. 通过拷贝构造函数初始化
      3. 通过单参数构造函数初始化
      4. 保留默认构造函数
      5. 类内的委托
      6. 内存不足
      7. 放置 new
    4. 析构函数
    5. 常量成员
      1. 常量数据成员
      2. 常量成员函数
    6. 静态成员
      1. 静态数据成员
      2. 静态成员函数
    7. 继承
      1. 多态语法
      2. 限定符语法
      3. 受限重写
      4. 多重继承
    8. 运算符重载
    9. 嵌套类
    10. 指向成员的指针
    11. 低级 C 结构
      1. 联合
      2. 灵活数组成员
      3. 位域
  10. 模板
    1. 模板化的函数
    2. 模板化的类
    3. 模板化的变量
    4. 模板参数
      1. 默认模板参数
      2. 推断模板参数
      3. 可变数量的模板参数
    5. 特性
      1. 一元谓词特性
      2. 二元谓词特性
      3. 数组特性
      4. 一元转换特性
      5. 二元转换特性
      6. S.F.I.N.A.E. 条件编译
    6. 元编程
      1. 数值模板参数
      2. 类型集合
    7. 概念
  11. 错误处理
    1. 返回错误代码
    2. 断言
    3. C++ 异常处理
  12. 标准库
    1. C 运行时
      1. 数学
        1. 基本数学
        2. 三角学
        3. 有理数
        4. 复数
        5. 其他数学函数
      2. 堆内存
        1. 分配
        2. 内存操作
        3. 泄漏
      3. 时间
        1. 时间作为字符串
        2. 精确时间
        3. 时间跨度作为 CPU 时钟节拍
      4. 基本算法
        1. 搜索
        2. 快速排序
      5. 执行 shell 命令
    2. STL:标准模板库
      1. 集合类
        1. 序列集合
          1. 向量
            1. 构造
            2. 大小
            3. 相等性
            4. 索引
            5. 移除项
            6. 插入项
            7. 赋值
          2. 布尔值向量
          3. STL 数组
          4. 双端队列
          5. 列表
          6. 前向列表
        2. 排序集合
          1. 一对作为一项
          2. 元组
          3. 映射
            1. 构造
            2. 排序类
            3. 自定义排序类
            4. 大小
            5. 相等性
            6. 索引
            7. 移除项
            8. 插入项
            9. 赋值
          4. 多映射
          5. 集合
          6. 多重集合
          7. 哈希表
      2. 迭代器
        1. 基本迭代器
        2. 范围
        3. 插入迭代器
        4. 反向迭代器
        5. 流迭代器
        6. 自定义迭代器
      3. 适配器
        1. 队列
        2. 二叉堆
      4. 可调用对象
        1. 函数名作为值
        2. 成员函数
        3. 隐式获取器函数
        4. 仿函数
        5. lambda 表达式
        6. 泛型 lambda 表达式
        7. 绑定新函数
      5. 算法
        1. 与 C 数组一起使用
        2. 查询
          1. 计数
          2. 搜索
          3. 累积
        3. 逐项应用
          1. 逐项处理
          2. 忽略先前值
          3. 两个集合的逐项组合
        4. 修改
          1. 复制
          2. 移除
          3. 重新排序
    3. 字符串
      1. Unicode
      2. 避免缓冲区溢出
      3. 字符类别
      4. C 字符串操作
      5. 字符串类
        1. 构造
        2. 相等性
        3. 索引
        4. 插入字符
        5. 算法
      6. 强制转换数值
        1. 数字到字符串
        2. 字符串到数字
      7. 别名字符串
      8. 正则表达式
      9. 区域设置
    4. IO 流
      1. 字符串流
      2. 流式传输自定义类型
    5. 文件系统访问
      1. 移动和删除
      2. 目录
      3. 二进制文件
      4. 格式化 I/O
      5. 换行符转换文件
      6. 文件大小
      7. 重定向 stdout
      8. 管道
      9. 控制台 I/O
      10. 流式 I/O
    6. 多线程
      1. 线程创建
      2. 临界区
      3. 原子值
      4. 事件
      5. 返回值
      6. 信号量
        1. 资源管理
        2. 片段排序
        3. 环形缓冲区
        4. 读写器
      7. 监视器和通道
    7. RNG:随机数生成器
  13. 已弃用的功能
    1. 三字符字符
    2. 一个已弃用的智能指针
    3. ANSI 之前的可变参数
    4. 已弃用的函数绑定
    5. Boost 功能升级

编辑人员指南

华夏公益教科书