《C/C++程式設計教程——面向對象分冊(第3版)》是2018年11月電子工業出版社出版的圖書,作者是鄭秋生。
基本介紹
- 書名:C/C++程式設計教程——面向對象分冊(第3版)
- 作者:鄭秋生
- ISBN:9787121330476
- 頁數:364頁
- 定價:47元
- 出版社:電子工業出版社
- 出版時間:2018年11月
- 開本:16開
內容簡介,圖書目錄,
內容簡介
本書的特點是實例豐富,重點突出,敘述深入淺出,分析問題透徹,既有完整的語法,又有大量的實例,突出程式設計的思想和方法,將C語言程式設計和C++程式設計有機地統一。特別適合作為計算機學科各套用型本科、專科的C語言程式設計和C++語言程式設計教材,也可作為其它理工科各專業的教材,也適合作為相關技術人員的自學參考書。
圖書目錄
第1章 類和對象 1
1.1 從C到C++ 3
1.1.1 C++的誕生 3
1.1.2 C++對C的擴充 3
1.1.3 面向對象和面向過程的區別 9
1.1.4 命名空間 12
1.2 面向對象程式設計的基本概念 17
1.2.1 類 17
1.2.2 對象 18
1.2.3 封裝與數據隱藏 18
1.2.4 繼承 18
1.2.5 多態性 19
1.2.6 訊息 19
1.3 類和對象的定義 19
1.3.1 類的定義 20
1.3.2 成員函式的定義 23
1.3.3 類對象的定義 26
1.3.4 對象成員的訪問 27
1.3.5 類對象的記憶體分配 32
1.3.6 this指針 33
1.4 構造函式和析構函式 35
1.4.1 構造函式的定義 35
1.4.2 構造函式的重載 38
1.4.3 帶默認參數的構造函式 40
1.4.4 析構函式 42
1.4.5 拷貝構造函式和默認拷貝
構造函式 43
1.5 綜合套用舉實例 48
習題1 50
第2章 類和對象的進一步套用 55
2.1 對象的進一步套用 57
2.1.1 堆對象 57
2.1.2 對象數組 57
2.1.3 類對象作為成員 59
2.1.4 面向對象程式中的常量 62
2.2 靜態成員 65
2.2.1 靜態數據成員 65
2.2.2 靜態成員函式 67
2.3 友元函式和友元類 71
2.3.1 友元函式 71
2.3.2 友元類 75
2.4 string類 77
2.4.1 char型字元串 77
2.4.2 string型字元串定義 77
2.4.3 string類構造函式 78
2.4.4 string類成員函式 79
2.5 綜合套用實例 82
習題2 86
第3章 繼承與派生 91
3.1 繼承與派生的基礎知識 93
3.1.1 繼承與派生的基本概念 93
3.1.2 派生類的聲明方式 94
3.1.3 派生類的構成 97
3.2 類的繼承方式 98
3.2.1 公有繼承 98
3.2.2 私有繼承 100
3.2.3 保護繼承 102
3.2.4 繼承方式的總結和比較 102
3.3 派生類的構造函式與析構函式 103
3.3.1 簡單派生類的構造函式 104
3.3.2 析構函式 105
3.3.3 複雜派生類構造函式和析構
函式 106
3.3.4 派生友元類 109
3.4 基類對象與派生類對象的相互
轉換 110
3.5 多重繼承 112
3.5.1 多重繼承的定義 112
3.5.2 多重繼承中的二義性問題 114
*3.6 虛繼承和虛基類 119
3.6.1 虛繼承和虛基類的定義 119
3.6.2 虛基類及其派生類構造函式
執行順序 122
3.7 C++ 11新特性之繼承構造函式和
委派構造函式 124
3.7.1 繼承構造函式 124
3.7.2 委派構造函式 125
3.8 綜合套用實例 126
習題3 139
第4章 多態性 147
4.1 多態性的概念 149
4.2 運算符重載 149
4.2.1 運算符重載概述 149
4.2.2 運算符重載的實現 150
4.2.3 單目運算符重載 151
4.2.4 雙目運算符重載 153
4.2.5 賦值運算符重載 156
4.2.6 下標運算符[ ]重載 159
4.2.7 關係運算符重載 161
4.2.8 類型轉換運算符重載 163
4.2.9 函式對象 164
4.3 聯編和虛函式 165
4.3.1 靜態聯編和動態聯編 165
4.3.2 虛函式的引入 165
4.3.3 虛函式的定義 168
4.3.4 動態聯編的工作機制 170
4.3.5 虛析構函式 171
4.4 純虛函式和抽象類 173
4.4.1 純虛函式 173
4.4.2 抽象類 173
4.5 綜合套用實例 176
習題4 181
第5章 輸入/輸出流 183
5.1 輸入/輸出流的基本概念 185
5.1.1 從C語言的輸入/輸出函式
到C++的輸入/輸出流 185
5.1.2 流的概念及流類庫 186
5.1.3 流的深入探討 187
5.2 面向標準設備的輸入/輸出流 188
5.2.1 標準流對象 188
5.2.2 標準輸入/輸出流的
格式化 189
5.2.3 用流成員函式實現輸入/
輸出 195
5.3 面向檔案的輸入/輸出流 197
5.3.1 檔案流類與檔案流對象 197
5.3.2 檔案的打開和關閉 198
5.3.3 文本檔案的輸入/輸出
(讀/寫) 200
5.3.4 二進制檔案的輸入/輸出
(讀/寫) 202
5.3.5 檔案的隨機訪問 204
5.4 面向記憶體的字元串流 206
5.5 自定義數據類型的輸入/輸出 210
5.6 綜合套用實例 211
習題5 216
第6章 異常處理 219
6.1 異常的概念 221
6.1.1 錯誤處理的複雜性 221
6.2 異常處理機制 222
6.2.1 異常處理機制的組成 222
6.2.2 異常處理的實現 222
6.3 異常處理規範 227
6.4 標準庫中的異常類 229
6.5 C++11引入的異常處理 230
6.6 綜合套用實例 231
習題6 236
第7章 模板 237
7.1 模板的概念 239
7.2 函式模板 239
7.2.1 函式模板語法 240
7.2.2 函式模板實例化 241
7.2.3 函式模板中模板參數隱式
轉換產生的錯誤 243
7.2.4 用戶定義的參數類型 245
7.2.5 函式模板和模板函式 247
7.2.6 使用函式模板需要注意的
問題 247
7.3 類模板 248
7.3.1 類模板的語法 249
7.3.2 類模板實例化 250
7.3.3 類模板的派生和繼承 258
7.3.4 使用類模板的注意事項 260
7.4 C++11標準的模板新內容 261
7.4.1 模板的右尖括弧 261
7.4.2 別名模板 261
7.4.3 函式模板的默認參數 262
7.4.4 變長參數 264
7.5 綜合套用實例 266
習題7 271
第8章 標準模板庫(STL)的介紹及套用 273
8.1 標準模板庫(STL)的概念 275
8.1.1 什麼是STL 275
8.1.2 STL的組成部分 275
8.1.3 STL對C++的影響 276
8.2 容器 276
8.2.1 容器簡介 276
8.2.2 容器的結構 277
8.2.3 容器的使用 278
8.3 疊代器 284
8.3.1 輸入疊代器 285
8.3.2 輸出疊代器 285
8.3.3 前向疊代器 286
8.3.4 雙向疊代器 287
8.3.5 隨機存取疊代器 287
8.3.6 疊代器的使用 287
8.4 算法 288
8.4.1 算法和函式對象 288
8.4.2 算法分類介紹 289
8.5 綜合套用實例 293
習題8 296
第9章 面向對象程式設計實例 297
9.1 圖書管理系統需求分析 299
9.1.1 需求分析的任務 299
9.1.2 圖書管理系統需求描述 299
9.1.3 圖書管理系統需求 299
9.2 圖書管理系統需求模型 300
9.2.1 圖書管理系統用例圖 300
9.2.2 圖書管理系統用例規約 301
9.3 圖書管理系統設計 308
9.3.1 分析類 308
9.3.2 順序圖 308
9.3.3 設計類圖 309
9.3.4 系統結構設計 310
9.4 圖書管理系統的實現 311
9.4.1 類的定義 311
9.4.2 類的實現 313
9.4.3 用戶界面設計 322
9.4.4 系統主函式 323
9.4.5 系統管理員功能模組 325
9.4.6 普通管理員功能 328
習題9 331
附錄A 常用容器與算法介紹 332
A.1 常用容器 332
A.1.1 向量(vector) 332
A.1.2 列表(list) 334
A.1.3 雙佇列(deque) 336
A.1.4 棧(stack) 339
A.1.5 佇列(queue) 339
A.2 常用算法 340
A.2.1 非修正算法 340
A.2.2 修正算法 341
A.2.3 排序算法 343
A.2.4 數值計算算法 344
附錄B C++新特性 345
附錄C C/C++跨平台開源開發環境——
Code::Blocks 351
參考文獻 356