C++開發實戰

內容介紹

《C++開發實戰》從初學者的角度全面介紹了使用C++進行程式開發的各種技術。在內容安排上由淺入深,讓讀者循序漸進地掌握編程技術;在內容講解上結合豐富的圖解和形象的比喻,幫助讀者理解晦澀難懂的技術;在內容形式上附有大量的提示、技巧、說明等欄目,夯實讀者編程技術,豐富編程經驗。全書共分5篇20章,其中,第1篇為新手入門,主要包括緒論、數據類型、表達式與語句、判斷與循環等內容;第2篇為進階提高,主要包括數組、函式、指針和引用等內容;第3篇為核心技術,包括類和對象、繼承和派生、模板、檔案操作等內容;第4篇為為高級套用,主要包括預處理、STL標準模板庫、程式調試等內容。前4篇最後均包含一個綜合實驗程式。第5篇為項目實戰,包括網路通信和吃豆子遊戲等內容。所有知識都結合具體實例進行介紹,對涉及的程式代碼給出了詳細的注釋,讀者可以輕鬆領會C++程式開發的精髓,快速提高開發技能。本書特色及豐富的學習資源包如下:
黃金學習搭配、專業學習視頻、重難點精確打擊、學習經驗分享、學習測試診斷、有趣實踐任務、專業資源庫、學習排憂解難、獲取源程式、提供習題答案、贈送開發案例。
本書適合有志於軟體開發的初學者、高校計算機相關專業學生和畢業生,也可作為軟體開發人員的參考手冊,或者高校的教學參考書。

作品目錄

目 錄
第1篇新 手 入 門
第1章緒論 3
視頻講解:18分鐘
1.1C++歷史背景 4
1.1.120世紀最偉大的發明--計算機 4
1.1.2C++發展歷程 4
1.1.3C++發展中的傑出人物 5
1.2Visual Studio 2010集成編譯環境 6
1.2.1安裝Visual Studio 2010 6
1.2.2卸載Visual Studio 2010 8
1.2.3使用Visual Studio 2010創建一個C++
控制台程式 9
1.2.4編寫第一個C++程式"Hello World" 11
1.3如何使用本書代碼 12
1.4小結 12
第2章數據類型 13
視頻講解:85分鐘
2.1第一個C++程式 14
2.1.1#include指令 14
2.1.2注釋 14
2.1.3main函式 15
2.1.4函式體 15
2.1.5函式返回值 15
2.2數據類型概述 15
2.3常量及符號 16
2.3.1整型常量 17
2.3.2實型常量 17
2.3.3字元常量 18
2.3.4字元串常量 19
2.3.5其他常量 19
2.4變數 19
2.4.1標識符 20
2.4.2變數與變數聲明 20
2.4.3整型變數 21
2.4.4實型變數 21
2.4.5變數賦值 22
2.4.6變數賦初值 22
2.4.7字元變數 22
2.5數據輸入與輸出 24
2.5.1控制台螢幕 24
2.5.2C++語言中的流 24
2.5.3流操作的控制 26
2.6實戰 33
2.6.1輸出一個正方形 33
2.6.2輸出一個三角形 34
2.6.3簡單求和程式 34
2.6.4數值型常量的使用 35
2.6.5將輸入的小寫字元轉換為大寫字元 35
2.6.6水池注水問題 36
2.7小結 37
2.8學習成果檢驗 37
第3章表達式與語句 39
視頻講解:55分鐘
3.1運算符 40
3.1.1算術運算符 40
3.1.2關係運算符 41
3.1.3邏輯運算符 42
3.1.4賦值運算符 43
3.1.5位運算 44
3.1.6移位運算符 45
3.1.7sizeof運算符 47
3.1.8條件運算符 48
3.1.9逗號運算符 48
3.2結合性和優先權 48
3.3表達式 50
3.3.1算術表達式 50
3.3.2關係表達式 50
3.3.3條件表達式 51
3.3.4賦值表達式 51
3.3.5邏輯表達式 51
3.3.6逗號表達式 51
3.3.7表達式中的類型轉換 53
3.4語句 55
3.5實戰 56
3.5.1求1~10的累加和 56
3.5.2求一個整數任意次方後的最後三位數 56
3.5.3婚禮上的謊言 57
3.5.4阿姆斯特朗數 58
3.5.5滿足abcd=(ab+cd) 2的數 59
3.5.6最大公約數及最低公倍數 59
3.6小結 60
3.7學習成果檢驗 61
第4章判斷與循環 63
視頻講解:90分鐘
4.1條件判斷 64
4.1.1if語句 64
4.1.2if...else語句 66
4.1.3嵌套的if-else語句 67
4.1.4使用條件運算符進行判斷 71
4.1.5switch判斷語句 73
4.2循環語句 77
4.2.1while循環語句 77
4.2.2do...while循環 79
4.2.3while與do...while比較 80
4.2.4for循環語句 81
4.3循環控制 85
4.3.1控制循環的變數 85
4.3.2break語句 86
4.3.3continue語句 87
4.3.4goto語句 88
4.4循環嵌套 90
4.5實戰 92
4.5.1小寫字母轉大寫 92
4.5.2百雞百錢問題 92
4.5.3判斷三角形類型 93
4.5.4簡單計算器 94
4.5.5求總數問題 95
4.5.6加油站加油 96
4.5.7燈塔數量 97
4.5.8尼科徹斯定理 98
4.6小結 99
4.7學習成果檢驗 99
第5章綜合實驗(1)--模擬ATM機界面
程式 101
視頻講解:7分鐘
5.1概述 102
5.2需求分析 102
5.3設計思路 102
5.4詳細設計 102
5.5程式代碼 106
第2篇進 階 提 高
第6章數組 113
視頻講解:34分鐘
6.1一維數組 114
6.1.1如何定義和引用一維數組 114
6.1.2一維數組初始化 115
6.1.3一維數組套用 116
6.2二維數組 117
6.2.1如何定義和引用二維數組 117
6.2.2二維數組初始化 118
6.2.3二維數組套用 120
6.3多維數組 121
6.4字元數組 121
6.4.1如何定義和使用字元數組 121
6.4.2字元數組初始化 122
6.4.3字元數組的結束標誌 125
6.4.4字元數組的輸入和輸出 126
6.4.5字元數組套用 128
6.5實戰 129
6.5.1相鄰元素之和 129
6.5.2選票系統 130
6.5.3統計學生成績 131
6.5.4模擬比賽打分 132
6.5.5矩陣的轉置 133
6.5.6設計魔方陣 135
6.5.7統計各種字元個數 136
6.6小結 137
6.7學習成果檢驗 137
第7章函式 139
視頻講解:74分鐘
7.1函式概述 140
7.2函式的定義 142
7.2.1無參函式 142
7.2.2有參函式 142
7.2.3空函式 143
7.3返回語句 143
7.3.1從函式返回 143
7.3.2返回值 144
7.4函式參數 145
7.4.1形式參數與實際參數 145
7.4.2數組作函式參數 147
7.4.3main參數 151
7.5函式的調用 153
7.5.1函式調用方式 153
7.5.2嵌套調用 153
7.5.3遞歸調用 155
7.6內部函式和外部函式 158
7.6.1內部函式 158
7.6.2外部函式 158
7.7局部變數和全局變數 160
7.7.1局部變數 160
7.7.2全局變數 161
7.8實戰 163
7.8.1求數組元素中的最小值 163
7.8.2求直角三角形斜邊 165
7.8.3小數分離 165
7.8.4判斷素數 166
7.8.5遞歸解決分魚問題 167
7.8.6字母檢索 168
7.8.7求字元串中字元的個數 169
7.8.8打魚曬網問題 170
7.9小結 172
7.10學習成果檢驗 172
第8章指針和引用 173
視頻講解:53分鐘
8.1指針 174
8.1.1變數與指針 174
8.1.2指針運算符和取地址運算符 177
8.1.3指針運算 179
8.2指針與數組 180
8.2.1數組的存儲 180
8.2.2指針與一維數組 180
8.2.3指針與二維數組 182
8.2.4指針與字元數組 186
8.3指向函式的指針 187
8.4指針與安全 188
8.4.1記憶體的分配方式 188
8.4.2記憶體安全 190
8.5引用 193
8.5.1左值與右值 193
8.5.2引用的概述 194
8.5.3右值引用 195
8.6函式與引用 196
8.6.1使用引用傳遞參數 196
8.6.2指針與引用 197
8.6.3右值引用傳遞參數 199
8.7實戰 200
8.7.1使用左值引用實現整數排序 200
8.7.2查找成績不及格的學生 201
8.7.3指針實現冒泡排序 202
8.7.4使用指針插入元素 203
8.7.5使用指針的指針輸出字元串 204
8.7.6為二維數組動態分配記憶體並釋放 205
8.7.7使用右值引用轉換二進制為十進制 206
8.8小結 207
8.9學習成果檢驗 208
第9章綜合實驗(2)--猜數字遊戲 209
視頻講解:24分鐘
9.1概述 210
9.2需求分析 210
9.3系統設計 210
9.3.1設計目標 210
9.3.2開發及運行環境 210
9.4程式預覽 211
9.5設計思路 213
9.6檔案引用 213
9.7主要功能實現 213
9.7.1主函式 213
9.7.2猜數字 215
9.7.3游標定位 217
第3篇核 心 技 術
第10章類和對象 221
視頻講解:62分鐘
10.1C++類 222
10.1.1類概述 222
10.1.2類的聲明與定義 222
10.1.3類的實現 224
10.1.4對象的聲明 228
10.2構造函式 231
10.2.1構造函式概述 231
10.2.2複製構造函式 233
10.3析構函式 234
10.4類成員 236
10.4.1訪問類成員 236
10.4.2內聯成員函式 238
10.4.3靜態類成員 239
10.4.4隱藏的this指針 241
10.4.5嵌套類 243
10.4.6局部類 244
10.5友元 245
10.5.1友元概述 245
10.5.2友元類 247
10.5.3友元方法 248
10.6命名空間 251
10.6.1使用命名空間 251
10.6.2定義命名空間 251
10.6.3在多個檔案中定義命名空間 254
10.6.4定義嵌套的命名空間 255
10.6.5定義未命名的命名空間 257
10.7實戰 257
10.7.1找出最高分 257
10.7.2計算平面兩點間距離 260
10.7.3創建簡單單向鍊表 261
10.7.4創建簡單雙向鍊表 265
10.7.5單向鍊表的逆置 269
10.7.6括弧匹配檢測 272
10.8小結 275
10.9學習成果檢驗 275
第11章繼承和派生 277
視頻講解:57分鐘
11.1繼承 278
11.1.1類的繼承 278
11.1.2繼承後可訪問性 280
11.1.3構造函式訪問順序 283
11.1.4子類隱藏父類的成員函式 284
11.2重載運算符 287
11.2.1重載運算符的必要性 288
11.2.2重載運算符的形式與規則 289
11.2.3重載運算符的運算 291
11.2.4轉換運算符 293
11.3多重繼承 295
11.3.1多重繼承定義 295
11.3.2二義性 296
11.3.3多重繼承的構造順序 297
11.4多態 299
11.4.1虛函式概述 299
11.4.2利用虛函式實現動態綁定 299
11.4.3虛繼承 301
11.5抽象類 303
11.5.1純虛函式 303
11.5.2實現抽象類中的成員函式 305
11.6結構體 306
11.7實戰 307
11.7.1接口的實現 307
11.7.2二維方陣的加減運算 310
11.7.3成員函式重寫與虛函式繼承的區別 312
11.7.4善用類指針 314
11.7.5鍊表合併 316
11.7.6柱狀三維圖形的體積 318
11.8小結 321
11.9學習成果檢驗 321
第12章模板 323
視頻講解:50分鐘
12.1函式模板 324
12.1.1函式模板的定義 324
12.1.2函式模板的作用 325
12.1.3重載函式模板 327
12.2類模板 328
12.2.1類模板的定義與聲明 328
12.2.2簡單類模板 330
12.2.3默認模板參數 331
12.2.4為具體類型的參數提供默認值 332
12.2.5有界數組模板 333
12.3模板的使用 335
12.3.1定製類模板 335
12.3.2定製類模板成員函式 337
12.3.3模板部分定製 338
12.4鍊表類模板 340
12.4.1鍊表 340
12.4.2使用鍊表類模板 342
12.4.3類模板的靜態數據成員 345
12.5實戰 347
12.5.1使用函式模板回收動態分配的記憶體 347
12.5.2三維坐標類模板 348
12.5.3多繼承與函式模板 349
12.5.4實現鍊表模板的插入 350
12.5.5選擇排序函式模板 351
12.6小結 353
12.7學習成果檢驗 354
第13章檔案操作 355
視頻講解:58分鐘
13.1檔案流 356
13.1.1C++中的流類庫 356
13.1.2類庫的使用 356
13.1.3ios類中的枚舉常量 357
13.1.4流的輸入/輸出 357
13.2檔案打開 358
13.2.1打開方式 358
13.2.2默認打開模式 359
13.2.3打開檔案同時創建檔案 360
13.3檔案的讀寫 361
13.3.1檔案流 361
13.3.2寫文本檔案 363
13.3.3讀取文本檔案 364
13.3.4二進制檔案的讀/寫 365
13.3.5實現檔案複製 366
13.4檔案指針移動操作 368
13.4.1檔案錯誤與狀態 368
13.4.2檔案的追加 368
13.4.3檔案結尾的判斷 370
13.4.4在指定位置讀/寫檔案 371
13.5檔案與流的關聯和分離 373
13.6刪除檔案 374
13.7實戰 375
13.7.1合併兩個檔案信息 375
13.7.2檔案複製 376
13.7.3檔案加密 377
13.7.4使用銷毀的手段保護檔案內容 379
13.7.5在檔案中查找關鍵字出現的次數 380
13.8小結 382
13.9學習成果檢驗 382
第14章綜合實驗(3)--圖書
管理系統 383
視頻講解:42分鐘
14.1系統設計 384
14.1.1需求分析 384
14.1.2系統目標 384
14.1.3系統功能結構 384
14.2圖書類 385
14.3主程式 389
14.4添加圖書 393
14.5顯示圖書信息 394
14.6刪除圖書 396
14.7小結 397
第4篇高 級 應 用
第15章預處理 401
視頻講解:42分鐘
15.1本章知識體系 402
15.2不帶參數的宏定義 402
15.3帶參數的宏定義 404
15.4#include命令 405
15.5條件編譯 408
15.5.1#if命令 408
15.5.2#ifdef及#ifndef命令 410
15.5.3#undef命令 412
15.5.4#line命令 412
15.5.5#pragma命令 413
15.6實戰 413
15.6.1利用宏計算兩個數的乘積 413
15.6.2利用宏求3個數中的最小數 414
15.6.3使用帶參數的宏求圓面積 415
15.6.4利用檔案包含設計輸出模式 415
15.6.5使用條件編譯隱藏密碼 416
15.7疑難解惑 417
15.7.1C++語言中包括哪些預處理功能 417
15.7.2使用宏時需要注意些什麼 417
15.7.3檔案包含可以嵌套嗎 418
15.8小結 418
15.9學習成果檢驗 418
第16章STL標準模板庫 419
視頻講解:35分鐘
16.1序列容器 420
16.1.1向量類模板 420
16.1.2雙端佇列類模板 422
16.1.3鍊表類模板 424
16.2結合容器 426
16.2.1set類模板 426
16.2.2multiset類模板 431
16.2.3map類模板 435
16.2.4multimap類模板 437
16.3算法 438
16.3.1非修正序列算法 438
16.3.2修正序列算法 441
16.3.3排序算法 445
16.3.4數值算法 451
16.4疊代器 455
16.4.1輸出疊代器 455
16.4.2輸入疊代器 456
16.4.3前向疊代器 457
16.4.4雙向疊代器 457
16.4.5隨機訪問疊代器 458
16.5實戰 459
16.5.1使用鍊表類模板載入學生類實例 459
16.5.2按索引排序 460
16.5.3使用並集算法合併容器 463
16.5.4利用容器算法洗牌 466
16.5.5篩選過期的藥品 468
16.6小結 470
16.7學習成果檢驗 470
第17章程式調試 471
視頻講解:36分鐘
17.1選擇正確的調試方法 472
17.2程式錯誤常見的4種類型 472
17.2.1語法錯誤 472
17.2.2連線錯誤 473
17.2.3運行時錯誤 473
17.2.4邏輯錯誤 474
17.3調試工具的使用 475
17.3.1創建調試程式 475
17.3.2進入調試狀態 476
17.3.3監視視窗 477
17.3.4調用堆疊視窗 477
17.3.5記憶體視窗 478
17.3.6變數視窗 478
17.3.7暫存器視窗 478
17.3.8反彙編視窗 479
17.4調試的基本套用 479
17.4.1變數的跟蹤與查看 479
17.4.2位置斷點的使用 480
17.5小結 481
第18章綜合實驗(4)--商品
銷售系統 483
視頻講解:38分鐘
18.1商品類的設計 484
18.2銷售系統的設計 485
18.3銷售記錄功能 497
18.4小結 502
第5篇項 目 實 戰
第19章網路通信 505
視頻講解:40分鐘
19.1TCP/IP協定 506
19.1.1OSI參考模型 506
19.1.2TCP/IP參考模型 506
19.1.3IP位址 507
19.1.4數據包格式 508
19.2套接字 510
19.2.1Winsocket套接字 510
19.2.2Winsocket的使用 510
19.2.3套接字阻塞模式 515
19.2.4位元組順序 515
19.2.5面向連線流 516
19.2.6面向無連線流 516
19.3簡單協定通信 517
19.3.1服務端 517
19.3.2客戶端 520
19.3.3實例的運行 521
19.4小結 521
第20章吃豆子遊戲 523
視頻講解:136分鐘
20.1Windows應用程式 524
20.1.1建立Windows應用程式 524
20.1.2WinMain函式 526
20.1.3Windows訊息循環 529
20.1.4常用繪圖GDI 532
20.2製作PacMan 535
20.2.1PacMan程式框架初步分析 535
20.2.2碰撞檢測的實現 538
20.2.3地圖類的設計 542
20.2.4數據更新 545
20.2.5繪圖 553
20.2.6視窗設計 559
20.3小結 566

相關詞條

相關搜尋

熱門詞條

聯絡我們