C++入門經典(第6版)

C++入門經典(第6版)

《C++入門經典(第6版)》是2020年3月人民郵電出版社出版的圖書,作者是[美]羅格斯 卡登海德、傑西 立波提。

基本介紹

  • 中文名:C++入門經典(第6版)
  • 作者:[美]羅格斯 卡登海德、傑西 立波提
  • 出版時間:2020年3月
  • 出版社:人民郵電出版社
  • 頁數:319 頁
  • ISBN:9787115442154
  • 定價:45 元
  • 開本:16 開
  • 裝幀:平裝
內容簡介,圖書目錄,

內容簡介

《C++入門經典(第6版)》通過大量短小精悍的程式詳細闡述了基本的C++編程概念,包括C++程式的組成部分、變數、常量、表達式、語句、運算符、函式、循環、數組、指針、引用、函式和運算符重載、繼承、C++14新增功能、面向對象分析和設計、模板、錯誤和異常處理等主題。每章都提供了示例程式清單,並輔以示例輸出和代碼分析,以闡述該章介紹的主題。為加深讀者對所學內容的理解,每章末尾都提供了常見問題及其答案以及練習和測驗。
《C++入門經典(第6版)》是針對C++初學者編寫的,不要求讀者有C語言方面的背景知識。《C++入門經典(第6版)》既可作為高等院校教授C++課程的教材,也可供初學者自學C++時使用。

圖書目錄

第 1部分 C++入門
第 1章 編寫第 一個程式 1
1.1 使用C++ 1
1.2 編譯和連結原始碼 2
1.3 創建您的第 一個程式 3
1.4 總結 4
1.5 問與答 4
1.6 作業 4
第 2章 程式的組成部分 6
2.1 使用C++的原因 6
2.1.1 編程風格 7
2.1.2 C++和面向對象編程 8
2.2 程式的組成部分 9
2.2.1 預處理器編譯指令 9
2.2.2 原始碼行 10
2.3 注釋 11
2.4 函式 11
2.5 總結 13
2.6 問與答 14
2.7 作業 14
第3章 創建變數和常量 16
3.1 變數是什麼 16
3.1.1 在記憶體中存儲變數 17
3.1.2 無符號變數和帶符號變數 18
3.1.3 變數類型 18
3.2 定義變數 19
3.3 給變數賦值 21
3.4 使用類型定義 22
3.5 常量 22
3.5.1 定義常量 23
3.5.2 枚舉常量 23
3.6 自動變數 24
3.7 總結 26
3.8 問與答 26
3.9 作業 27
第4章 使用表達式、語句和運算符 28
4.1 語句 28
4.1.1 空白 28
4.1.2 複合語句 29
4.2 表達式 29
4.3 運算符 30
4.3.1 賦值運算符 30
4.3.2 數學運算符 30
4.3.3 組合運算符 31
4.3.4 遞增和遞減運算符 31
4.3.5 前綴運算符和後綴運算符 31
4.3.6 運算符優先權 33
4.3.7 關係運算符 35
4.4 if-else條件語句 35
4.4.1 else子句 36
4.4.2 複合if語句 37
4.5 邏輯運算符 38
4.5.1 與運算符 38
4.5.2 或運算符 39
4.5.3 非運算符 39
4.5.4 關係運算符和邏輯運算符的
優先權 39
4.6 棘手的表達式值 39
4.7 總結 40
4.8 問與答 40
4.9 作業 41
第5章 調用函式 42
5.1 函式是什麼 42
5.2 聲明和定義函式 42
5.3 在函式中使用變數 44
5.3.1 局部變數 44
5.3.2 全局變數 46
5.4 函式形參 47
5.5 從函式返回值 47
5.6 默認函式形參 49
5.7 函式重載 50
5.8 自動確定返回類型 51
5.9 總結 53
5.10 問與答 53
5.11 作業 53
第6章 控制程式流程 55
6.1 循環 55
6.2 while循環 55
6.2.1 退出循環 56
6.2.2 跳到下一次循環 57
6.3 do-while循環 58
6.4 for循環 59
6.4.1 高 級for循環 60
6.4.2 嵌套循環 61
6.5 switch語句 62
6.6 總結 64
6.7 問與答 64
6.8 作業 65
第7章 使用數組和字元串存儲信息 66
7.1 數組是什麼 66
7.2 寫入時超過數組末尾 68
7.3 初始化數組 68
7.4 多維數組 69
7.4.1 初始化多維數組 70
7.4.2 記憶體簡介 71
7.5 字元數組 71
7.6 複製字元串 73
7.7 使用foreach循環讀取數組 74
7.8 總結 75
7.9 問與答 75
7.10 作業 75
第 2部分 類
第8章 創建基本類 77
8.1 類型是什麼 77
8.2 創建新類型 77
8.3 類和成員 78
8.3.1 聲明類 78
8.3.2 創建對象 79
8.4 訪問類成員 79
8.5 實現成員函式 80
8.6 創建和刪除對象 82
8.6.1 默認構造函式 83
8.6.2 編譯器提供的構造函式 83
8.7 總結 85
8.8 問與答 86
8.9 作業 86
第9章 高 級類 88
9.1 const成員函式 88
9.2 接口和實現 89
9.3 組織類聲明和函式定義 89
9.4 內聯實現 89
9.5 將其他類用作成員數據的類 91
9.6 總結 95
9.7 問與答 95
9.8 作業 95
第3部分 記憶體管理
第 10章 創建指針 97
10.1 理解指針及其用途 97
10.1.1 在指針中存儲地址 99
10.1.2 間接運算符(間接地使用指針) 100
10.1.3 指針、地址和變數 101
10.1.4 使用指針運算元據 102
10.1.5 查看存儲在指針中的
地址 103
10.1.6 為何使用指針 104
10.2 棧和堆 104
10.2.1 使用關鍵字new 105
10.2.2 使用關鍵字delete 106
10.2.3 避免記憶體泄露 107
10.3 空指針常量 108
10.4 總結 109
10.5 問與答 109
10.6 作業 109
第 11章 開發高 級指針 111
11.1 在堆中創建對象 111
11.2 刪除對象 111
11.3 使用指針訪問數據成員 112
11.4 堆中的數據成員 113
11.5 this指針 115
11.6 懸擺指針 116
11.7 const指針 116
11.8 const指針和const成員函式 117
11.9 總結 118
11.10 問與答 118
11.11 作業 119
第 12章 創建引用 120
12.1 什麼是引用 120
12.2 創建引用 120
12.3 將地址運算符用於引用 121
12.4 可引用的目標 123
12.5 空指針和空引用 124
12.6 按引用傳遞函式參數 124
12.6.1 使用指針實現swap() 125
12.6.2 使用引用實現swap() 126
12.7 理解函式頭和原型 127
12.8 返回多個值 127
12.9 總結 130
12.10 問與答 130
12.11 作業 130
第 13章 高 級引用和指針 132
13.1 按引用傳遞以提高效率 132
13.2 傳遞const指針 134
13.3 作為指針替代品的引用 136
13.4 什麼情況下使用引用以及什麼
情況下使用指針 138
13.5 指向對象的引用不在作用
域內 138
13.6 返回指向堆中對象的引用 139
13.7 誰擁有指針 141
13.8 總結 141
13.9 問與答 141
13.10 作業 141
第4部分 高 級C++
第 14章 高 級函式 143
14.1 重載成員函式 143
14.2 使用默認值 145
14.3 初始化對象 146
14.4 複製構造函式 147
14.5 編譯階段常量表達式 150
14.6 總結 151
14.7 問與答 152
14.8 作業 152
第 15章 運算符重載 154
15.1 重載運算符 154
15.1.1 編寫遞增方法 155
15.1.2 重載後綴運算符 157
15.1.3 重載加法運算符 158
15.1.4 對運算符重載的限制 160
15.1.5 賦值運算符 160
15.2 轉換運算符 162
15.3 總結 165
15.4 問與答 165
15.5 作業 165
第5部分 繼承和多態
第 16章 使用繼承擴展類 167
16.1 什麼是繼承 167
16.1.1 繼承和派生 168
16.1.2 動物和繼承 168
16.1.3 派生語法 168
16.2 私有和保護 170
16.3 構造函式和析構函式 171
16.4 將參數傳遞給基類構造函式 173
16.5 重寫函式 177
16.5.1 重載和重寫 178
16.5.2 隱藏基類的成員函式 178
16.5.3 調用基類的成員函式 180
16.6 總結 181
16.7 問與答 181
16.8 作業 181
第 17章 使用多態和派生類 183
17.1 使用虛成員函式實現多態 183
17.2 虛成員函式的工作原理 186
17.2.1 不能通過基類指針訪問派
生類特有的方法 187
17.2.2 切除 188
17.2.3 虛析構函式 189
17.2.4 虛複製構造函式 190
17.2.5 使用虛成員函式的代價 192
17.3 總結 193
17.4 問與答 193
17.5 作業 193
第 18章 使用高 級多態 195
18.1 單繼承存在的問題 195
18.2 抽象數據類型 198
18.2.1 純虛函式 201
18.2.2 實現純虛函式 202
18.2.3 複雜的抽象層次結構 204
18.2.4 哪些類是抽象的 207
18.3 總結 208
18.4 問與答 208
18.5 作業 208
第6部分 特殊主題
第 19章 使用鍊表存儲信息 210
19.1 鍊表和其他結構 210
19.2 鍊表案例研究 211
19.2.1 委託 211
19.2.2 鍊表的組成部分 211
19.3 作為對象的鍊表 217
19.4 總結 218
19.5 問與答 218
19.6 作業 219
第 20章 使用特殊的類、函式和指針 220
20.1 靜態成員數據 220
20.2 靜態成員函式 222
20.3 將其他類對象作為成員 223
20.3.1 訪問被包含類的成員 228
20.3.2 禁止訪問內部類的成員 228
20.3.3 按引用還是按值複製 229
20.4 友元類和友元函式 229
20.5 函式指針 229
20.5.1 函式指針數組 232
20.5.2 將函式指針傳遞給其他
函式 234
20.5.3 將typedef用於函式指針 236
20.5.4 成員函式指針 236
20.5.5 成員函式指針數組 238
20.6 總結 240
20.7 問與答 240
20.8 作業 240
第 21章 使用C++14新增的功能 242
21.1 最新的C++版本 242
21.2 使用auto來指定函式的返回
類型 242
21.3 改進的數值字面量 245
21.4 關鍵字constexpr 245
21.5 Lambda表達式 247
21.6 總結 248
21.7 問與答 248
21.8 作業 249
第 22章 面向對象分析和設計 250
22.1 開發周期 250
22.2 模擬報警系統 250
22.2.1 概念化 251
22.2.2 分析和需求 251
22.2.3 高 級設計和詳細設計 252
22.2.4 其他對象 252
22.2.5 設計類 252
22.2.6 添加其他類 253
22.2.7 事件循環 253
22.3 案例研究 255
22.3.1 三思而後行 256
22.3.2 分而治之 256
22.3.3 郵件格式 257
22.3.4 初步類設計 257
22.3.5 同根和不同根 258
22.3.6 設計接口 259
22.3.7 建立原型 260
22.3.8 80/80規則 260
22.3.9 設計PostMasterMessage
類 261
22.3.10 應用程式編程接口 261
22.3.11 小組編程 262
22.3.12 需要不斷考慮的設計
因素 262
22.3.13 使用驅動程式 263
22.4 總結 269
22.5 問與答 269
22.6 作業 269
第 23章 創建模板 271
23.1 什麼是模板 271
23.2 模板實例 271
23.3 模板的定義 272
23.4 使用模板實例 277
23.5 總結 281
23.6 問與答 282
23.7 作業 282
第 24章 處理異常和錯誤 284
24.1 程式中的各種錯誤 284
24.2 處理意外情況 285
24.3 異常 285
24.4 使用try塊和catch塊 289
24.4.1 捕獲異常 289
24.4.2 使用多條catch語句 289
24.4.3 使用引用以多態方式捕獲
異常 290
24.5 編寫專業級代碼 293
24.5.1 大括弧 293
24.5.2 長代碼行 294
24.5.3 switch語句 294
24.5.4 程式文本 294
24.5.5 標識符命名 295
24.5.6 名稱的拼寫和大寫 295
24.5.7 注釋 296
24.5.8 設定訪問許可權 296
24.5.9 類定義 297
24.5.10 包含檔案 297
24.5.11 使用const 297
24.6 總結 297
24.7 問與答 297
24.8 作業 298
第7部分 附錄
附錄A 二進制和十六進制 299
附錄B 術語表 306
附錄C 配套網站 312
附錄D 在Windows系統中使用C++編譯器MinGW 313

相關詞條

熱門詞條

聯絡我們