輕鬆學C++

內容介紹

《輕鬆學C++(圖解版)》由淺入深,全面、系統地介紹了C++程式語言。《輕鬆學C++(圖解版)》最大的特色就是提供了大量的插圖,一改過去編程書籍枯燥乏味的文字講解,利用各種說明插圖和運行結果示意圖,生動形象地再現了C++語言各項內容,使讀者能夠輕鬆地掌握學習內容。另外,作者專門為每一章編寫了一些習題,以便讀者對該章的學習水平進行檢測。《輕鬆學C++(圖解版)》還錄製了大量的配套教學視頻,這些視頻和書中的實例原始碼一起收錄於《輕鬆學C++(圖解版)》的配書光碟中。

作品目錄

第1篇C++概述篇
第1章C++基礎 2
1.1C++概述2
1.1.1C++語言發展歷程 2
1.1.2C++語言特點 2
1.1.3C++程式開發基本過程 3
1.2C++開發環境的搭建 4
1.2.1Visual C++ 6.0安裝 4
1.2.2Visual C++ 6.0開發環境簡介 6
1.3第一個C++程式 6
1.3.1創建源程式 6
1.3.2編譯連結 9
1.3.3調試運行 10
1.3.4典型C++程式的執行過程 12
1.3.5使用C++解決問題的流程 12
1.4C++程式的結構 14
1.4.1注釋 14
1.4.2編譯預處理和新舊標準 14
1.4.3程式主體 15
1.5小結 15
1.6習題 15
第2篇C++基礎語法篇
第2章數據的表示 18
2.1數 18
2.1.1二進制 18
2.1.2八進制 19
2.1.3十六進制 20
2.2數據的描述 21
2.2.1C++的構詞方式——標識符 21
2.2.2特殊的標識符——關鍵字 22
2.2.3整數類型 23
2.2.4浮點類型 24
2.2.5字元類型 25
2.2.6布爾類型 27
2.3變數 27
2.3.1變數的聲明和定義 28
2.3.2不變的變數——常量 28
2.4小結 29
2.5習題 29
第3章程式的基本單位——語句 33
3.1語句的構成 33
3.1.1表達式語句 33
3.1.2輸入/輸出語句 33
3.2運算符 35
3.2.1運算符概述 35
3.2.2運算符的分類 35
3.3賦值運算符 36
3.3.1賦值運算符——“=” 36
3.3.2數據類型轉換——隱式轉換 37
3.3.3顯式轉換 37
3.4其他常用運算符 39
3.4.1算術運算符 39
3.4.2自增自減運算符 40
3.4.3位運算符 41
3.4.4複合賦值運算符 43
3.4.5逗號運算符 43
3.4.6sizeof運算符 44
3.4.7邏輯運算符 45
3.4.8運算符的優先權和結合性 45
3.5語句塊 48
3.5.1語句塊的構成 48
3.5.2作用域——變數的作用範圍 48
3.6小結 49
3.7習題 49
第4章程式控制結構 56
4.1語句塊的執行方式——順序結構 56
4.2條件的表達 56
4.2.1單一條件的表達——關係運算符 56
4.2.2多條件的表達——邏輯運算符 57
4.3選擇結構 58
4.3.1最簡單的選擇——條件運算符 58
4.3.2單分支條件語句——if語句 59
4.3.3雙分支條件語句——if…else語句 61
4.3.4多重if…else語句 62
4.3.5情況語句——switch語句 64
4.3.6套用實例 65
4.4循環結構 66
4.4.1for語句 67
4.4.2while語句 68
4.4.3do…while語句 69
4.4.4多重循環 70
4.4.5套用舉例 71
4.5意外情況的表達——轉向語句 72
4.5.1跳出語句——break語句 72
4.5.2繼續語句——continue語句 72
4.5.3轉向語句——goto 73
4.6綜合實例 74
4.7小結 76
4.8習題 76
第5章數組 81
5.1數組概述 81
5.2數組的來源 82
5.3一維數組 83
5.3.1一維數組的聲明和定義 83
5.3.2一維數組的引用 84
5.4二維數組 86
5.4.1二維數組的聲明和定義 86
5.4.2二維數組的初始化 86
5.4.3二維數組的引用 88
5.4.4多維數組在記憶體中如何排列元素 89
5.5字元串 90
5.5.1字元數組 90
5.5.2字元串的存儲形式 91
5.5.3字元數組與字元串的區別 91
5.5.4字元串處理函式 92
5.6綜合實例——楊輝三角 94
5.7小結 97
5.8習題 97
第6章函式 106
6.1函式概述 106
6.1.1函式的基本概念 106
6.1.2函式的分類 107
6.2函式的組成 107
6.2.1函式頭 108
6.2.2函式體 108
6.3函式的聲明和定義 110
6.3.1函式原型——函式的聲明 110
6.3.2函式實現——函式的定義 111
6.4函式參數傳遞 112
6.4.1函式的形參和實參 112
6.4.2值傳遞 113
6.5函式的調用 115
6.5.1函式的調用過程 115
6.5.2無參函式的調用 115
6.5.3帶參函式的調用 116
6.5.4默認形參值的調用 117
6.5.5嵌套調用 120
6.5.6數組作為函式參數 121
6.6遞歸函式 123
6.6.1直接遞歸 124
6.6.2間接遞歸 125
6.7main()函式 127
6.7.1不帶參數的main()函式 127
6.7.2帶參數的main()函式 127
6.8函式的綜合套用 128
6.9小結 128
6.10習題 128
第7章指針與引用 136
7.1指針概述 136
7.1.1指針的基本概念 136
7.1.2定義指針變數 137
7.1.3初始化指針 138
7.2指針的訪問 139
7.2.1指針的值 140
7.2.2訪問指針數據 140
7.2.3小結指針p 141
7.3指針的算術運算 142
7.3.1指針與整數的加減運算 142
7.3.2指針加減1運算 143
7.3.3指針的相減運算 144
7.4特殊指針 144
7.4.1數組指針 144
7.4.2指向函式的指針——函式指針 145
7.4.3指針數組 146
7.4.4二級指針——指針的指針 147
7.4.5多級指針——二級以上的指針 148
7.5指針的套用 149
7.5.1指向一維數組的指針 149
7.5.2指向二維數組的指針 150
7.5.3指向字元串的指針 152
7.5.4指針作為函式參數 153
7.5.5指針作為函式的返回值——指針函式 155
7.5.6動態記憶體分配 156
7.6引用 158
7.6.1引用的套用 158
7.6.2引用與指針 159
7.6.3引用作為函式參數 160
7.7小結 161
7.8習題 162
第8章複合數據類型 169
8.1結構體 169
8.1.1結構體概述 169
8.1.2定義結構體類型 170
8.1.3聲明結構體變數 172
8.2結構體的套用 173
8.2.1初始化結構體變數 173
8.2.2引用結構體變數成員 175
8.2.3結構體指針 175
8.2.4結構體數組 176
8.2.5結構體和數組的比較 178
8.3聯合 178
8.3.1定義联合類型 178
8.3.2聲明聯合變數 179
8.3.3引用聯合類型成員 179
8.4枚舉 180
8.4.1定義枚舉類型 180
8.4.2聲明枚舉變數 182
8.4.3引用枚舉變數成員 182
8.5用戶自定義數據類型 183
8.6綜合實例 184
8.7小結 187
8.8習題 187
第3篇C++面向對象篇
第9章類和對象 194
9.1類和對象概述 194
9.2類和對象的基礎語法 195
9.2.1類的聲明 195
9.2.2實例化對象 196
9.3類的屬性——數據成員 196
9.3.1類的屬性的定義 196
9.3.2類的數據成員的特例——靜態數據成員 196
9.4類的方法——成員函式 197
9.4.1類的方法的定義 197
9.4.2靜態成員函式 198
9.4.3成員函式的類別(const的另一種用法) 198
9.5特殊的成員函式——構造函式和析構函式 198
9.5.1構造函式的概念 198
9.5.2構造函式的聲明和定義 200
9.5.3構造函式的調用 201
9.5.4不帶參數的構造函式 202
9.5.5帶有默認參數的構造函式 202
9.5.6構造函式的重載 203
9.5.7特殊的構造函式——複製構造函式 205
9.5.8析構函式 207
9.5.9類和函式的聯繫 208
9.5.10this指針 209
9.6小結 209
9.7習題 209
第10章繼承與派生 217
10.1繼承與派生的基礎語法 217
10.1.1繼承與派生概述 217
10.1.2聲明派生類 218
10.2成員的訪問 219
10.2.1類的成員的訪問說明符 219
10.2.2類的成員的訪問許可權 219
10.3繼承的訪問控制 219
10.3.1私有繼承 220
10.3.2公有繼承 221
10.3.3保護繼承 223
10.3.4特殊方法的繼承——派生類的構造函式和析構函式 225
10.4多重繼承 227
10.4.1聲明多重繼承 227
10.4.2二義性問題 227
10.4.3多重繼承的構造函式和析構函式 231
10.5虛基類 233
10.5.1聲明虛基類 233
10.5.2虛基類的構造函式和初始化 234
10.6友元 235
10.6.1友元的引入 235
10.6.2友元函式 235
10.6.3友元成員 237
10.6.4友元類 239
10.7綜合實例 240
10.8小結 244
10.9習題 244
第11章多態 251
11.1多態概述 251
11.1.1什麼是多態 251
11.1.2多態的引入 252
11.1.3聯編 253
11.2函式重載 254
11.3虛函式 255
11.3.1定義虛函式 256
11.3.2多級繼承和虛函式 258
11.4純虛函式與抽象類 259
11.4.1純虛函式 259
11.4.2抽象類 261
11.5綜合實例 263
11.6小結 264
11.7習題 264
第12章運算符重載 269
12.1運算符重載概述 269
12.1.1什麼是運算符重載 269
12.1.2運算符重載的特點 270
12.2運算符重載形式 271
12.2.1運算符重載為類的成員函式 272
12.2.2運算符重載為類的友元函式 275
12.2.3運算符成員函式與友元運算符函式的比較 278
12.3特殊運算符重載 278
12.3.1“++”和“--”重載 278
12.3.2賦值運算符“=”重載 280
12.3.3下標運算符“[ ]”重載 281
12.4類類型轉換 283
12.5小結 284
12.6習題 284
第13章類模板 290
13.1什麼是類模板 290
13.2定義類模板 292
13.2.1語法 292
13.2.2非類型參數 294
13.2.3模板參數的默認實參 294
13.3生成類模板的實例 295
13.3.1類型參數的模板實例化 295
13.3.2非類型參數的模板實例化 296
13.3.3類模板示例 296
13.4類模板的靜態成員 298
13.5類模板的友元 300
13.5.1非模板的友元類和友元函式 301
13.5.2與模板參數不綁定的友元類和友元函式模板 301
13.5.3與模板參數綁定的友元類和友元函式模板 302
13.6類模板的特化 303
13.6.1類模板的全特化 303
13.6.2類模板的偏特化 304
13.6.3類模板的匹配規則 304
13.7小結 305
13.8習題 305
第4篇C++套用技術篇
第14章輸入/輸出流 308
14.1輸入/輸出流的引入 308
14.1.1C語言中的輸入/輸出缺陷 308
14.1.2輸入/輸出流簡介 309
14.1.3輸入/輸出流類層次 310
14.2標準輸入/輸出流 311
14.2.1標準輸出流對象 312
14.2.2標準輸入流對象 312
14.3輸入/輸出流成員函式 313
14.3.1get()函式 313
14.3.2getline()函式 314
14.3.3put()函式 315
14.3.4read()和write()函式 315
14.3.5其他成員函式 316
14.4輸入/輸出格式控制 317
14.4.1用ios類的成員函式進行格式控制 317
14.4.2使用格式控制符進行格式控制 320
14.5用戶自定義數據類型的輸入/輸出 322
14.5.1重載輸出運算符“<<” 322
14.5.2重載輸入運算符“>>” 323
14.6命名空間 325
14.6.1命名空間概述 325
14.6.2定義命名空間 325
14.6.3使用命名空間 326
14.7小結 327
14.8習題 327
第15章預處理和宏 331
15.1預處理概述 331
15.2宏 331
15.2.1宏展開 332
15.2.2替代常量 332
15.2.3替代運算符 334
15.3帶參數的宏 334
15.3.1定義帶參數的宏 335
15.3.2注意宏展開的結果 336
15.3.3帶參數的宏與函式的比較 338
15.4條件編譯 338
15.4.1宏指令 338
15.4.2使用條件編譯 340
15.5檔案包含和頭檔案衛士 342
15.5.1包含檔案指令 342
15.5.2搜尋頭檔案 343
15.5.3頭檔案衛士 344
15.6預定義的宏 346
15.7小結 347
15.8習題 347
第16章標準模板庫 349
16.1標準模板庫概述 349
16.1.1C++標準庫 349
16.1.2STL的形成 350
16.1.3STL的組成 350
16.1.4STL的引入 351
16.2算法 353
16.3容器 354
16.3.1容器概述 355
16.3.2向量 355
16.3.3列表 356
16.3.4集合 358
16.3.5雙端佇列 358
16.3.6棧 360
16.3.7映射和多重映射 361
16.4疊代器 361
16.5小結 363
16.6習題 363
第17章程式調試與異常處理 365
17.1程式錯誤 365
17.1.1編譯錯誤 365
17.1.2邏輯錯誤 366
17.1.3運行錯誤 367
17.1.4程式調試 368
17.2異常處理 369
17.2.1基本思想 369
17.2.2拋出異常 370
17.2.3捕獲異常 371
17.2.4自定義異常對象 373
17.3異常處理實例 374
17.4小結 375
17.5習題 375
第18章檔案 378
18.1檔案概述 378
18.1.1操作檔案的過程 379
18.1.2處理檔案流的類 381
18.2檔案的打開與關閉 384
18.2.1打開檔案 384
18.2.2關閉檔案 385
18.3檔案的順序讀/寫 386
18.3.1讀/寫文本檔案 386
18.3.2讀/寫二進制檔案 387
18.4檔案的隨機讀/寫 391
18.5小結 394
18.6習題 394

相關詞條

相關搜尋

熱門詞條

聯絡我們