预购商品
书目分类
特别推荐
第1章 C++基礎知識 1 1.1 C/C++歷史 1 1.2 C++開發環境 2 1.2.1 Microsoft Visual Studio概述 2 1.2.2 Visual Studio 2019開發環境簡介 3 1.2.3 創建控制台應用程式 8 1.3 C++編程入門 11 1.4 物件導向程式設計 15 1.4.1 基本概念 15 1.4.2 物件導向程式設計的特點 17 1.4.3 物件導向程式設計和面向過程程式設計的比較 18 1.4.4 物件導向的軟體發展方法 18 1.5 本章小結 20 本章習題 21 第2章 C++擴充知識 22 2.1 C++標準庫標頭檔 22 2.2 字串類 23 2.2.1 定義字串變數 23 2.2.2 字串的賦值和連接 24 2.2.3 字串的比較 24 2.2.4 字串替換 24 2.2.5 string類的特性 24 2.3 const定義常量 26 2.4 引用和傳址參數 26 2.4.1 引用 26 2.4.2 傳址參數 28 2.4.3 引用的特別說明 29 2.5 函式宣告和實參類型轉換 29 2.6 默認實參 30 2.7 作用域和作用域運算子 31 2.8 函數重載 32 2.9 內置(內聯)函數 34 2.10 使用new和delete運算子動態管理記憶體 35 2.11 本章小結 37 本章習題 38 第3章 類和對象 39 3.1 類和對象簡介 39 3.1.1 類的聲明 41 3.1.2 對象和產生實體 42 3.2 成員函數的聲明和定義 43 3.3 資料成員的聲明及設置函數與獲取函數 44 3.3.1 資料成員的聲明 44 3.3.2 設置函數和獲取函數 44 3.4 成員函數的存儲和this指標 46 3.5 使用構造函數初始化物件 49 3.5.1 構造函數的聲明和定義 49 3.5.2 預設構造函數 51 3.5.3 帶預設實參的構造函數 52 3.5.4 參數初始化列表 53 3.5.5 轉換構造函數 54 3.6 析構函數 55 3.7 何時調用構造函數和析構函數 57 3.8 類的再使用性 59 3.8.1 一個類對應一個獨立檔 59 3.8.2 介面和實現的分離 60 3.9 C++空類說明 62 3.10 本章小結 62 本章習題 64 第4章 類的深入剖析 65 4.1 類的作用域和類成員的訪問 65 4.1.1 隱藏機制 66 4.1.2 對象訪問類的成員 67 4.1.3 對象指標訪問類的成員 67 4.1.4 對象引用訪問類的成員 67 4.1.5 類成員訪問的例子 68 4.2 對象的賦值和複製 68 4.2.1 對象的賦值 68 4.2.2 對象的複製 70 4.3 const物件和const成員函數 73 4.3.1 const對象 73 4.3.2 const成員函數 73 4.3.3 mutable資料成員 75 4.3.4 const物件和const成員函數的說明 75 4.4 類作為函數參數 75 4.5 動態創建和刪除物件 78 4.6 static類成員 80 4.7 友元函數和友元類 83 4.8 組合 85 4.9 本章小結 88 本章習題 89 第5章 物件導向編程之繼承 91 5.1 繼承 91 5.2 基類和派生類 92 5.2.1 C++繼承機制 92 5.2.2 派生類的聲明方式 93 5.2.3 派生類物件的構成 95 5.3 派生類成員的訪問 96 5.3.1 protected成員 97 5.3.2 不同繼承方式下派生類訪問基類成員 99 5.3.3 多級繼承的成員訪問 101 5.3.4 繼承下成員訪問的規則 103 5.4 public、protected和private繼承 103 5.5 基類和派生類的關係 105 5.5.1 替換原則 105 5.5.2 基類與派生類的轉換 106 5.5.3 派生類對基類同名成員的隱藏 109 5.6 派生類的構造函數和析構函數 109 5.6.1 簡單派生類的構造函數 110 5.6.2 組合方式下派生類的構造函數 111 5.6.3 多級繼承時派生類的構造函數 113 5.6.4 派生類的析構函數 115 5.6.5 派生類構造函數的顯式定義 116 5.7 多繼承和虛基類 117 5.7.1 多繼承的聲明方法及派生類構造函數 117 5.7.2 多繼承下基類同名成員的二義性問題 117 5.7.3 虛基類 118 5.8 本章小結 121 本章習題 122 第6章 物件導向編程之多態性 124 6.1 多態性 124 6.2 典型的多態性實例 125 6.3 虛函數和多態性 126 6.3.1 非虛函數和靜態繫結 126 6.3.2 虛函數和動態繫結 128 6.3.3 基類物件調用虛函數 131 6.3.4 多態性對比 132 6.4 抽象類別和純虛函數 132 6.4.1 實例研究 132 6.4.2 抽象類別 135 6.5 多態下的構造函數和析構函數 138 6.5.1 構造函數能否是虛函數 138 6.5.2 虛析構函數 138 6.5.3 構造函數和析構函數中的多態性 140 6.6 向下強制類型轉換(選修) 142 6.7 多態性的底層實現機制(選修) 144 6.8 本章小結 146 本章習題 147 第7章 運算子重載 149 7.1 運算子重載的基礎知識 149 7.1.1 為什麼要重載運算子 150 7.1.2 運算子重載的方法 152 7.2 運算子重載的規則 152 7.3 類成員函數和全域函數重載運算子的比較 154 7.3.1 使用類成員函數重載運算子 154 7.3.2 使用全域函數重載運算子 154 7.3.3 兩種重載運算子函數的區別 155 7.4 重載一元運算子 155 7.5 重載二元運算子 157 7.6 重載流插入運算子和流提取運算子 159 7.7 類型轉換 161 7.7.1 類型轉換運算子 162 7.7.2 轉換構造函數 162 7.7.3 關鍵字explicit 163 7.8 重載自增和自減運算子 163 7.9 本章小結 165 本章習題 167 第8章 輸入/輸出流 169 8.1 流 170 8.1.1 C++流庫 170 8.1.2 C++流的主要類及繼承層次 171 8.2 輸出流 172 8.2.1 使用成員函數put輸出字元 172 8.2.2 使用成員函數write非格式化輸出 173 8.3 流的格式化輸出 173 8.4 輸入流 176 8.4.1 使用成員函數get讀入字元 176 8.4.2 使用成員函數getline讀入一行字元 178 8.4.3 使用成員函數read非格式化輸入 179 8.4.4 成員函數peek、putback和ignore 179 8.5 文件流和文件處理 179 8.5.1 文件和流 179 8.5.2 文件創建、打開與關閉 180 8.5.3 ASCII檔的操作 181 8.5.4 二進位檔案的操作 185 8.6 本章小結 189 本章習題 190 第9章 異常處理和命名空間 191 9.1 異常處理 191 9.1.1 異常概述 191 9.1.2 異常處理機制 192 9.1.3 異常說明 195 9.1.4 構造函數、析構函數和異常處理 195 9.1.5 標準庫異常類層次 195 9.2 命名空間 196 9.2.1 如何定義命名空間 197 9.2.2 如何訪問命名空間的成員 197 9.2.3 標準命名空間std 198 9.2.4 命名空間的幾點說明 198 9.3 本章小結 198 本章習題 199 第10章 範本 201 10.1 函數範本 202 10.1.1 函數範本的定義和使用 202 10.1.2 函數範本的進一步說明 204 10.2 類範本 206 10.2.1 類範本的定義和使用 207 10.2.2 類範本的進一步說明 209 10.3 STL介紹 210 10.3.1 容器 211 10.3.2 算法 215 10.3.3 反覆運算器 218 10.3.4 函數物件 219 10.3.5 適配器 220 10.3.6 記憶體分配器 222 10.4 本章小結 222 本章習題 223 第11章 C++11 225 11.1 C++11簡介 225 11.2 C++11新特性 226 11.2.1 auto類型推斷 226 11.2.2 decltype類型推斷 226 11.2.3 初始化列表 227 11.2.4 Lambda運算式 227 11.2.5 連續右尖括弧的改進 228 11.2.6 基於範圍的for迴圈 228 11.2.7 可變參數範本 229 11.2.8 nullptr 230 11.2.9 右值引用 230 11.2.10 顯式生成預設函數與顯式刪除函數 230 11.2.11 override和final 231 11.2.12 智能指針 231 11.2.13 tuple 231 11.3 C++11示例 232 11.4 本章小結 234
客服公告
热门活动
订阅电子报