C++開發實戰

C++開發實戰

《C++開發實戰》的作者是軟體開發技術聯盟 ,清華大學出版社出版。

基本介紹

  • 作者:軟體開發技術聯盟  編著
  • ISBN:9787302318910
  • 定價:79.80元
  • 出版社:清華大學出版社
  • 出版時間:2013-9-1
  • 裝幀:平裝
內容介紹,作品目錄,

內容介紹

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

作品目錄

目 錄
第1篇 新 手 入 門
第1章 緒論 3
視頻講解:18分鐘
1.1 C++歷史背景 4
1.1.1 20世紀最偉大的發明--計算機 4
1.1.2 C++發展歷程 4
1.1.3 C++發展中的傑出人物 5
1.2 Visual 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.3 main函式 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.2 C++語言中的流 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.7 sizeof運算符 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.1 if語句 64
4.1.2 if...else語句 66
4.1.3 嵌套的if-else語句 67
4.1.4 使用條件運算符進行判斷 71
4.1.5 switch判斷語句 73
4.2 循環語句 77
4.2.1 while循環語句 77
4.2.2 do...while循環 79
4.2.3 while與do...while比較 80
4.2.4 for循環語句 81
4.3 循環控制 85
4.3.1 控制循環的變數 85
4.3.2 break語句 86
4.3.3 continue語句 87
4.3.4 goto語句 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.3 main參數 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.1 C++類 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.1 C++中的流類庫 356
13.1.2 類庫的使用 356
13.1.3 ios類中的枚舉常量 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.1 C++語言中包括哪些預處理功能 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.1 set類模板 426
16.2.2 multiset類模板 431
16.2.3 map類模板 435
16.2.4 multimap類模板 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.1 TCP/IP協定 506
19.1.1 OSI參考模型 506
19.1.2 TCP/IP參考模型 506
19.1.3 IP位址 507
19.1.4 數據包格式 508
19.2 套接字 510
19.2.1 Winsocket套接字 510
19.2.2 Winsocket的使用 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.1 Windows應用程式 524
20.1.1 建立Windows應用程式 524
20.1.2 WinMain函式 526
20.1.3 Windows訊息循環 529
20.1.4 常用繪圖GDI 532
20.2 製作PacMan 535
20.2.1 PacMan程式框架初步分析 535
20.2.2 碰撞檢測的實現 538
20.2.3 地圖類的設計 542
20.2.4 數據更新 545
20.2.5 繪圖 553
20.2.6 視窗設計 559
20.3 小結 566

相關詞條

熱門詞條

聯絡我們