跳轉到內容

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 功能升級

編輯人員指南

華夏公益教科書