TOP
0
0
【23號簡體館日】限時三天領券享優惠!!
C++程序設計:思想與方法(第3版)(簡體書)
滿額折

C++程序設計:思想與方法(第3版)(簡體書)

人民幣定價:49.8 元
定  價:NT$ 299 元
優惠價:87260
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:7 點
相關商品
商品簡介
目次

商品簡介

本書主要內容包括:程式的基本組成,分支程式設計,迴圈程式設計,批量資料處理——陣列,過程封裝——函數,間接訪問——指標,資料封裝——結構體,模組化開發,創建新的類型,運算子重載,組合與繼承,泛型機制——範本,輸入輸出與檔,異常處理,容器與反覆運算器。

目次

第1章 緒論 1
1.1 程式設計概述 1
1.2 計算機組成 1
1.2.1 電腦硬體 2
1.2.2 電腦軟體 3
1.3 程式設計語言 3
1.3.1 機器語言 3
1.3.2 組合語言 4
1.3.3 高階語言 4
1.3.4 C++語言 5
1.4 程式設計過程 5
1.4.1 演算法設計 5
1.4.2 編碼 8
1.4.3 編譯和連結 8
1.4.4 調試與維護 8
1.5 小結 9
1.6 習題 9
第2章 程式的基本組成 11
2.1 程式的基本結構 11
2.1.1 注釋 12
2.1.2 預編譯 12
2.1.3 名字空間 13
2.1.4 主程序 13
2.2 常量與變數 14
2.2.1 變數定義 14
2.2.2 資料類型 16
2.2.3 常量與符號常量 21
*2.2.4 C++11的擴展 24
2.3 資料的輸入/輸出 25
2.3.1 資料的輸入 25
2.3.2 資料的輸出 26
2.4 算數運算 27
2.4.1 算術運算式 27
2.4.2 各種類型的數值間的混合運算 27
2.4.3 強制類型轉換 27
2.4.4 數學函式程式庫 28
*2.4.5 C++11的擴展 29
2.5 賦值運算 29
2.5.1 賦值運算式 29
2.5.2 賦值的嵌套 30
2.5.3 複合賦值運算 31
2.5.4 自增和自減運算子 32
2.6 程式規範及常見錯誤 33
2.7 小結 34
2.8 習題 34
第3章 分支程式設計 37
3.1 關聯運算式 37
3.2 邏輯運算式 38
3.3 if語句 39
3.3.1 if語句的格式 39
3.3.2 if語句的嵌套 43
3.3.3 條件運算式 44
3.4 switch語句及其應用 46
3.5 程式設計規範及常見錯誤 52
3.6 小結 52
3.7 習題 53
第4章 迴圈程式設計 56
4.1 計數迴圈 56
4.1.1 for語句 56
4.1.2 for語句的進一步討論 61
4.1.3 for迴圈的嵌套 61
*4.1.4 C++11的擴展 62
4.2 break和continue語句 62
4.3 基於哨兵的迴圈 64
4.3.1 while語句 64
4.3.2 do-while語句 68
4.4 迴圈的中途退出 69
*4.5 枚舉法 70
*4.6 貪婪法 73
4.7 程式設計規範及常見錯誤 75
4.8 小結 75
4.9 習題 75
第5章 批量資料處理——陣列 79
5.1 一維陣列 79
5.1.1 一維陣列的定義 79
5.1.2 一維陣列元素的引用 80
5.1.3 一維陣列的記憶體映射 81
5.1.4 一維陣列的應用 81
*5.1.5 C++11的擴展 83
5.2 查找 84
5.2.1 順序查找 84
5.2.2 二分查找 85
5.3 排序 87
5.3.1 直接選擇排序法 87
5.3.2 冒泡排序法 89
5.4 二維陣列 90
5.4.1 二維陣列的定義 91
5.4.2 二維陣列元素的引用 91
5.4.3 二維陣列的記憶體映射 92
5.4.4 二維陣列的應用 92
5.5 字串 96
5.5.1 字串的存儲及初始化 96
5.5.2 字串的輸入/輸出 97
5.5.3 字串處理函數 97
5.5.4 字串的應用 98
5.6 程式設計規範及常見錯誤 100
5.7 小結 101
5.8 習題 101
第6章 過程封裝——函數 104
6.1 函式定義 105
6.1.1 函數的基本結構 105
6.1.2 return語句 105
6.1.3 函數示例 105
6.2 函數的使用 108
6.2.1 函數原型的聲明 108
6.2.2 函式呼叫 109
6.2.3 將函數與主程序放在一起 109
6.2.4 函式呼叫過程 110
6.3 變數的作用域 113
6.4 變數的存儲類別 115
6.4.1 自動變數 115
6.4.2 靜態變數 115
6.4.3 寄存器變數 117
6.4.4 外部變數 117
6.5 陣列作為函數參數 119
6.6 帶預設值的函數 124
6.7 內聯函數 125
6.8 重載函數 126
6.9 函數範本 128
6.10 遞迴函數 129
6.10.1 遞迴函數的基本概念 129
6.10.2 遞迴函數的應用 131
*6.11 基於遞迴的演算法 136
6.11.1 回溯法 136
6.11.2 分治法 140
6.11.3 動態規劃 143
*6.12 C++11的擴展 146
6.12.1 constexpr函數 146
6.12.2 尾置返回類型 146
6.13 程式設計規範及常見錯誤 147
6.14 小結 147
6.15 習題 148
第7章 間接訪問——指針 151
7.1 指針的概念 151
7.1.1 指針與間接訪問 151
7.1.2 指標變數的定義 151
7.1.3 指標的基本操作 152
*7.1.4 C++11的擴展 155
7.2 指標運算與陣列 155
7.2.1 指針運算 155
7.2.2 用指標訪問陣列 156
7.3 動態記憶體分配 156
7.3.1 動態變數 156
7.3.2 動態變數的創建 157
7.3.3 動態變數的消亡 158
7.3.4 記憶體洩漏 158
7.3.5 查找new操作的失誤 158
7.3.6 動態變數應用 159
*7.3.7 C++11的擴展 160
7.4 字串再討論 161
7.5 指標與函數 161
7.5.1 指標作為形式參數 161
7.5.2 陣列作為函數參數再討論 164
7.5.3 字串作為函數的參數 166
7.5.4 返回指標的函數 166
7.6 參考類型與函數 167
7.6.1 參考類型 167
7.6.2 引用傳遞 169
7.6.3 返回引用的函數 171
*7.6.4 C++11的擴展 171
7.7 指標陣列與多級指標 172
7.7.1 指標陣列 172
*7.7.2 main函數的參數 173
*7.7.3 多級指針 175
*7.7.4 動態二維陣列 176
7.8 函數指標 177
7.8.1 指向函數的指標 177
7.8.2 函數指標作為函數參數 178
7.8.3 用於功能表選擇 180
*7.8.4 C++11的擴展 181
7.9 程式設計規範及常見錯誤 183
7.10 小結 183
7.11 習題 184
第8章 資料封裝——結構體 186
8.1 記錄的概念 186
8.2 記錄的使用 187
8.2.1 結構體類型的定義 187
8.2.2 結構體類型的變數的定義 188
8.2.3 結構體類型的變數的使用 189
8.3 結構體作為函數的參數 190
8.4 鏈表 192
8.4.1 鏈表的概念 192
8.4.2 單鏈表的存儲 193
8.4.3 單鏈表的操作 193
8.5 程式設計規範及常見錯誤 198
8.6 小結 198
8.7 習題 198
第9章 模組化開發 200
9.1 結構化程式設計 200
9.2 自頂向下分解 200
9.2.1 頂層分解 201
9.2.2 prn_instruction的實現 201
9.2.3 play函數的實現 201
9.2.4 get_call_from_user的實現 202
9.3 模組劃分 203
9.4 設計自己的庫 209
9.5 程式設計規範及常見錯誤 214
9.6 小結 214
9.7 習題 214
第10章 創建新的類型 216
10.1 物件導向程式設計 216
10.1.1 抽象的過程 216
10.1.2 物件導向程式設計的特點 217
10.1.3 庫和類 218
10.2 類的定義 224
10.3 物件的使用 228
10.3.1 物件的定義 228
10.3.2 物件的操作 228
10.3.3 this指針 230
10.4 物件的構造與析構 231
10.4.1 物件的構造 231
10.4.2 對象的析構 235
10.4.3 類與物件應用實例 237
*10.4.4 C++11的擴展 240
10.5 const與類 242
10.5.1 常量資料成員 242
10.5.2 常量對象 243
10.5.3 常量成員函數 243
10.6 靜態成員 244
10.6.1 靜態資料成員 244
10.6.2 靜態成員函數 245
10.6.3 靜態常量成員 247
10.7 友元 248
10.8 程式設計規範及常見錯誤 250
10.9 小結 250
10.10 習題 251
第11章 運算子重載 254
11.1 運算子重載的意義 254
11.2 運算子重載的方法 255
11.3 5個特殊運算子的重載 259
11.3.1 設定運算子的重載 259
11.3.2 下標運算子的重載 260
11.3.3 函式呼叫運算子的重載 261
11.3.4 ++和--運算子的重載 262
11.3.5 輸入/輸出運算子的重載 265
*11.3.6 C++11的擴展 267
11.4 自訂類型轉換函數 267
11.4.1 內置類型到類類型的轉換 268
11.4.2 類類型到其他類型的轉換 268
*11.4.3 C++11的擴展 269
11.5 運算子重載的應用 269
11.5.1 完整的Rational類的定義和使用 269
11.5.2 完整的DoubleArray類的定義和使用 272
11.6 程式設計規範及常見錯誤 275
11.7 小結 276
11.8 習題 276
第12章 組合與繼承 279
12.1 組合 279
12.2 繼承 284
12.2.1 派生類的定義 285
12.2.2 繼承的應用 288
12.2.3 重定義基類的函數 292
12.2.4 派生類對象的賦值 293
12.2.5 派生類作為基類 294
12.3 運行時的多態性 295
12.3.1 將派生類對象隱式轉換為基類對象 295
12.3.2 多態性與虛函數 297
12.3.3 虛析構函數 300
*12.3.4 C++11的擴展 300
12.4 純虛函數和抽象類別 301
12.4.1 純虛函數 301
12.4.2 抽象類別 301
12.5 程式設計規範及常見錯誤 302
12.6 小結 302
12.7 習題 302
第13章 泛型機制——範本 305
13.1 類範本的定義 305
13.2 類範本的產生實體 307
13.3 範本的編譯 308
13.4 非類型參數和參數的預設值 308
13.5 類範本的友元 309
13.5.1 普通友元 309
13.5.2 範本的特定實例的友元 310
13.6 類範本作為基類 314
13.7 程式設計規範及常見錯誤 314
13.8 小結 315
13.9 習題 315
第14章 輸入/輸出與檔 316
14.1 流與標準庫 316
14.2 輸入/輸出緩衝 317
14.3 基於控制台的輸入/輸出 318
14.3.1 輸出流 318
14.3.2 輸入流 320
14.3.3 格式化的輸入/輸出 323
14.4 基於檔的輸入/輸出 326
14.4.1 文件的概念 326
14.4.2 文件和流 327
14.4.3 文件的循序存取 329
14.4.4 檔的隨機訪問 331
14.4.5 用流式檔處理含有記錄的檔 333
14.5 基於字串的輸入/輸出 339
14.6 程式設計規範及常見錯誤 340
14.7 小結 340
14.8 習題 340
第15章 異常處理 343
15.1 傳統的異常處理方法 343
15.2 異常處理機制 343
15.2.1 異常拋出 344
15.2.2 異常捕獲 345
15.3 異常規格說明 350
15.4 程式設計規範及常見錯誤 351
15.5 小結 351
15.6 習題 351
第16章 容器和反覆運算器 353
16.1 容器 353
16.2 反覆運算器 353
16.3 容器和反覆運算器的設計示例 354
16.3.1 用陣列實現的容器 354
16.3.2 用鏈表實現的容器 357
16.4 小結 359
16.5 習題 360
參考文獻 361

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 260
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區