C++項目開發全程實錄(第3版)

明日科技

  • 出版商: 清華大學
  • 出版日期: 2024-11-01
  • 定價: $539
  • 售價: 8.5$458
  • 語言: 簡體中文
  • ISBN: 7302672733
  • ISBN-13: 9787302672739
  • 相關分類: C++ 程式語言
  • 下單後立即進貨 (約4週~6週)

  • C++項目開發全程實錄(第3版)-preview-1
  • C++項目開發全程實錄(第3版)-preview-2
  • C++項目開發全程實錄(第3版)-preview-3
C++項目開發全程實錄(第3版)-preview-1

相關主題

商品描述

《C++項目開發全程實錄(第3版)》精選 C++開發方向的 10個熱門應用項目,實用性非常強。這些項目包含:閱界藏書管理系統、軟件註冊碼生成專家、系統優化清理助手、悅看多媒體播放器、FTP文件管理系統、網絡五子棋、坦克動盪游戲、桌面破壞王游戲、一站式文檔管家、股票數據抓取分析系統。本書從軟件工程的角度出發,按照項目開發的順序,系統、全面地講解每一個項目的開發實現過程。體例上,每章一個項目,統一採用“開發背景→系統設計→技術準備→各功能模塊實現→項目運行→源碼下載”的形式完整呈現項目,給讀者明確的成就感,可以讓讀者快速積累實際項目經驗與技巧,早日實現就業目標。

目錄大綱

目錄

第1章 閱界藏書管理系統 1

—流程控制 + 數組 + 面向對象 + 指針 + 成員函數 + 文件操作

1.1 開發背景 1

1.2 系統設計 2

1.2.1 開發環境 2

1.2.2 業務流程 2

1.2.3 功能結構 2

1.3 技術準備 3

1.4 公共類設計 11

1.5 主窗體設計 14

1.5.1 主窗體模塊概述 14

1.5.2 窗口初始化 14

1.5.3 設置窗口標題欄 15

1.5.4 顯示系統主菜單 15

1.6 功能設計 16

1.6.1 添加新書功能 16

1.6.2 瀏覽全部功能 17

1.6.3 刪除圖書功能 18

1.6.4 項目主函數 19

1.7 項目運行 19

1.8 源碼下載 19

第2章 軟件註冊碼生成專家 20

—宏技術 + 剪貼板操作 + 註冊表操作+加密算法+系統API應用+硬件信息獲取

2.1 開發背景 20

2.2 系統設計 21

2.2.1 開發環境 21

2.2.2 業務流程 21

2.2.3 功能結構 21

2.3 技術準備 22

2.3.1 技術概覽 22

2.3.2 獲取CPU序列號 22

2.3.3 獲得磁盤序列號 23

2.3.4 獲得網卡地址 24

2.3.5 生成註冊碼 24

2.3.6 根據註冊表中數據限制試用次數 25

2.3.7 註冊快捷鍵 26

2.3.8 一次性粘貼註冊碼 27

2.4 註冊碼生成器模塊 28

2.4.1 註冊碼生成器模塊概述 28

2.4.2 界面設計 28

2.4.3 獲取序列號 28

2.4.4 實現“生成註冊碼”按鈕功能 30

2.5 註冊軟件主窗體模塊 31

2.5.1 註冊軟件主窗體模塊概述 31

2.5.2 界面設計 31

2.5.3 實現註冊軟件主窗體功能 32

2.6 軟件註冊功能模塊 32

2.6.1 軟件註冊功能模塊概述 32

2.6.2 界面設計 32

2.6.3 讀取試用次數 33

2.6.4 實現“前進”按鈕功能 33

2.7 註冊向導窗體模塊 34

2.7.1 註冊向導窗體模塊概述 34

2.7.2 界面設計 34

2.7.3 設置註冊碼編輯框 35

2.7.4 實現“後退”按鈕功能 35

2.7.5 實現“註冊”按鈕功能 36

2.8 項目運行 36

2.9 源碼下載 38

第3章 系統優化清理助手 39

—MFC界面開發 + 文件操作 + TabControl面板控件 + 窗體標題欄重繪+註冊表操作 + 系統進程管理

3.1 開發背景 39

3.2 系統設計 40

3.2.1 開發環境 40

3.2.2 業務流程 40

3.2.3 功能結構 40

3.3 技術準備 41

3.3.1 技術概覽 41

3.3.2 自繪標題欄 42

3.3.3 獲得任務列表 45

3.3.4 獲取正在運行的進程 46

3.3.5 為列表視圖控件關聯右鍵菜單 47

3.3.6 清空回收站 49

3.3.7 清空“運行”中歷史記錄 49

3.3.8 清空IE歷史記錄 50

3.3.9 調用控制面板工具 51

3.4 主窗體模塊 51

3.4.1 主窗體模塊概述 51

3.4.2 界面設計 51

3.4.3 實現子窗口切換功能 52

3.4.4 實現控制面板操作功能 53

3.4.5 繪制主窗口背景圖片 54

3.5 控制面板操作模塊 54

3.5.1 控制面板模塊概述 54

3.5.2 界面設計 54

3.5.3 設置按鈕的顯示圖標 55

3.5.4 實現各按鈕的單擊事件功能 55

3.6 磁盤空間整理模塊 57

3.6.1 磁盤空間整理模塊概述 57

3.6.2 界面設計 57

3.6.3 設置視圖控件 58

3.6.4 實現刪除文件功能 60

3.6.5 實現“清除”按鈕功能 60

3.7 垃圾文件清理模塊 60

3.7.1 垃圾文件清理模塊概述 60

3.7.2 界面設計 61

3.7.3 實現獲得系統驅動器盤符功能 61

3.7.4 實現刪除垃圾文件功能 62

3.7.5 實現“開始”按鈕功能 62

3.7.6 實現“停止”按鈕功能 63

3.8 系統任務管理模塊 63

3.8.1 系統任務管理模塊概述 63

3.8.2 界面設計 63

3.8.3 設置標簽頁和視圖控件 63

3.8.4 實現“結束任務”菜單項功能 65

3.9 項目運行 65

3.10 源碼下載 66

第4章 悅看多媒體播放器 67

—自定義控件 + 多線程 + DirectShow流媒體處理技術

4.1 開發背景 67

4.2 系統設計 68

4.2.1 開發環境 68

4.2.2 業務流程 68

4.2.3 功能結構 68

4.3 技術準備 68

4.3.1 技術概覽 68

4.3.2 DirectShow流媒體處理技術 70

4.4 媒體播放器主窗口模塊 75

4.4.1 媒體播放器主窗口模塊概述 75

4.4.2 界面設計 75

4.4.3 媒體播放器主窗口模塊初始化 75

4.4.4 實現播放功能 76

4.4.5 實現“打開文件”按鈕功能 80

4.4.6 實現“抓圖”按鈕功能 80

4.4.7 實現“全屏”按鈕功能 81

4.4.8 實現設置視頻圖像功能 82

4.4.9 實現“快進”按鈕功能 82

4.4.10 實現“增大音量”按鈕功能 83

4.4.11 實現“黑白圖像”按鈕功能 83

4.5 視頻顯示模塊 84

4.5.1 視頻顯示模塊概述 84

4.5.2 界面設計 84

4.5.3 實現加載菜單功能 84

4.5.4 實現彈出菜單功能 84

4.5.5 實現調整窗口功能 84

4.5.6 實現播放文件功能 85

4.6 字幕疊加模塊 85

4.6.1 字幕疊加模塊概述 85

4.6.2 界面設計 86

4.6.3 疊加文本的字體設置 86

4.6.4 取消字幕信息 86

4.7 視頻設置模塊 88

4.7.1 視頻設置模塊概述 88

4.7.2 界面設計 88

4.7.3 設置視頻圖像 88

4.7.4 視頻圖像的默認效果 90

4.7.5 實現色調功能 91

4.8 文件播放列表模塊 91

4.8.1 文件播放列表模塊概述 91

4.8.2 界面設計 91

4.8.3 實現添加文件列表功能 92

4.8.4 實現刪除文件列表功能 93

4.8.5 實現載入列表功能 93

4.8.6 實現保存列表功能 93

4.8.7 實現選中文件播放功能 94

4.8.8 實現循環播放功能 95

4.9 項目運行 96

4.10 源碼下載 96

第5章 FTP文件管理系統 97

—自定義控件 + 文件操作 + FTP操作 + 多線程

5.1 開發背景 97

5.2 系統設計 98

5.2.1 開發環境 98

5.2.2 業務流程 98

5.2.3 功能結構 99

5.3 技術準備 99

5.3.1 技術概覽 99

5.3.2 登錄FTP服務器 99

5.3.3 實現FTP目錄瀏覽 100

5.3.4 多線程實現FTP任務下載 101

5.3.5 在任務列表中暫停、取消某一任務 106

5.3.6 利用鼠標拖曳實現文件的上傳/下載 106

5.3.7 抽象的功能面板類 108

5.4 主窗體模塊 108

5.4.1 主窗體模塊概述 108

5.4.2 界面設計 109

5.4.3 創建登錄信息欄和工具欄窗口 110

5.4.4 實現“查看”菜單中“登錄信息欄”功能 110

5.4.5 實現“查看”菜單中“工具信息欄”功能 111

5.5 登錄信息欄模塊 112

5.5.1 登錄信息模塊概述 112

5.5.2 界面設計 112

5.5.3 創建登錄信息欄 112

5.5.4 實現登錄FTP服務器功能 113

5.6 工具欄模塊 113

5.6.1 工具欄模塊概述 113

5.6.2 界面設計 114

5.6.3 創建工具欄 114

5.6.4 實現查找文件路徑功能 115

5.6.5 實現下載功能 116

5.6.6 實現上傳功能 117

5.7 本地信息模塊 119

5.7.1 本地信息模塊概述 119

5.7.2 界面設計 119

5.7.3 獲取系統磁盤目錄 119

5.7.4 顯示磁盤內容 120

5.7.5 實現拖曳功能 121

5.8 遠程FTP服務器信息模塊 122

5.8.1 遠程FTP服務器信息模塊概述 122

5.8.2 界面設計 122

5.8.3 獲取系統文件圖像 122

5.8.4 實現鼠標拖曳功能 123

5.9 任務列表模塊 124

5.9.1 任務列表模塊概述 124

5.9.2 界面設計 124

5.9.3 創建列表控件 125

5.9.4 實現暫停功能 126

5.9.5 實現繼續功能 126

5.9.6 實現刪除功能 126

5.10 項目運行 127

5.11 源碼下載 127

第6章 網絡五子棋 128

—枚舉 + 嵌套語句 + 鏈表 + 消息處理 + GDI繪圖 + Socket網絡編程

6.1 開發背景 129

6.2 系統設計 129

6.2.1 開發環境 129

6.2.2 業務流程 129

6.2.3 功能結構 130

6.3 技術準備 130

6.3.1 技術概覽 130

6.3.2 Socket網絡編程 131

6.3.3 使用TCP進行網絡通信 131

6.3.4 定義網絡通信協議 132

6.3.5 在棋盤中繪制棋子 133

6.3.6 五子棋贏棋判斷 135

6.3.7 設計游戲悔棋功能 138

6.3.8 設計游戲回放功能 140

6.4 服務器端主窗體模塊設計 143

6.4.1 服務器端主窗體模塊概述 143

6.4.2 創建3個窗體 143

6.4.3 調整窗體大小 145

6.5 棋盤窗體模塊設計 146

6.5.1 棋盤窗體模塊概述 146

6.5.2 界面設計 146

6.5.3 獲取客戶端信息 146

6.5.4 繪製表格 147

6.5.5 實現游戲回放功能 147

6.5.6 獲得棋子位置 149

6.5.7 判斷是否贏棋 151

6.5.8 實現服務器設置功能 154

6.5.9 檢測對方狀態 155

6.5.10 設置棋子臨近點 159

6.6 游戲控制窗體模塊設計 160

6.6.1 游戲控制窗體模塊概述 160

6.6.2 界面設計 160

6.6.3 實現開始功能 161

6.6.4 實現悔棋功能 161

6.6.5 實現和棋功能 161

6.6.6 實現認輸功能 161

6.6.7 實現游戲回放功能 162

6.7 客戶端主窗體模塊設計 162

6.7.1 客戶端主窗體模塊設計 162

6.7.2 創建3個窗體 162

6.7.3 調整窗體大小 164

6.8 項目運行 165

6.9 源碼下載 166

第7章 坦克動盪游戲 167

—結構體 + 泛型 + GDI繪圖 + 碰撞檢測算法 + 最短路徑算法 + 自動尋路算法+ 鍵盤消息處理

7.1 開發背景 167

7.2 系統設計 168

7.2.1 開發環境 168

7.2.2 業務流程 168

7.2.3 功能結構 168

7.3 技術準備 169

7.3.1 技術概覽 169

7.3.2 繪圖庫GDIPlus的使用 172

7.4 公共設計 173

7.4.1 引進所有游戲對象聲明 173

7.4.2 聲明核心對象之CGame類的公有方法 173

7.4.3 聲明私有方法 174

7.5 主窗體設計 176

7.6 功能設計 177

7.6.1 游戲初始化 177

7.6.2 “畫”游戲幀數 180

7.6.3 繪制坦克 181

7.6.4 子彈功能 181

7.6.5 碰撞檢測 187

7.6.6 電腦玩家自尋路徑 194

7.6.7 獲取鼠標及鍵盤消息 195

7.6.8 人機大戰 198

7.6.9 雙人大戰 200

7.7 項目運行 201

7.8 源碼下載 202

第8章 桌面破壞王游戲 203

—容器 + 迭代器 + GDI繪圖 + 鼠標消息處理 + 屏幕截圖技術

8.1 開發背景 203

8.2 系統設計 204

8.2.1 開發環境 204

8.2.2 業務流程 204

8.2.3 功能結構 205

8.3 技術準備 205

8.3.1 技術概覽 205

8.3.2 鼠標消息處理 205

8.3.3 屏幕截圖技術 206

8.4 公共設計 210

8.4.1 游戲調度器CGame類設計 210

8.4.2 引入資源圖片 217

8.4.3 實現工具及破壞標記接口 218

8.5 游戲菜單模塊 221

8.5.1 盒子的實現 221

8.5.2 “飛出”的工具 225

8.5.3 顯示游戲菜單 229

8.6 忍者工具模塊 230

8.6.1 實現忍者破壞標記功能 230

8.6.2 實現忍者工具功能 231

8.6.3 使用忍者破壞桌面 239

8.7 粉刷匠工具模塊 241

8.7.1 實現粉刷匠粉刷痕跡功能 241

8.7.2 實現粉刷匠工具功能 242

8.7.3 使用粉刷匠破壞桌面 246

8.8 錘子工具模塊 247

8.8.1 實現破碎效果 247

8.8.2 實現錘子工具功能 249

8.8.3 使用錘子碎屏破壞效果 250

8.9 橡皮人工具模塊 250

8.9.1 實現橡皮人擦除痕跡功能 251

8.9.2 實現橡皮人工具功能 253

8.9.3 使用橡皮人擦除屏幕 256

8.10 項目運行 256

8.11 源碼下載 256

第9章 一站式文檔管家 257

—文件操作 + ADO技術 + SQL Server數據庫 + Word操作

9.1 開發背景 258

9.2 系統設計 258

9.2.1 開發環境 258

9.2.2 業務流程 258

9.2.3 功能結構 258

9.3 技術準備 259

9.3.1 技術概覽 259

9.3.2 添加ADO連接類 261

9.4 數據庫設計 262

9.4.1 數據表結構 262

9.4.2 添加數據庫表的類 263

9.5 主窗體模塊設計 267

9.5.1 主窗體模塊概述 267

9.5.2 初始化控件 267

9.5.3 樹形視圖控件設計 268

9.5.4 實現文檔瀏覽功能 270

9.5.5 實現刪除文檔功能 271

9.5.6 實現日誌管理功能 271

9.5.7 實現退出系統功能 272

9.6 登錄管理模塊設計 272

9.6.1 登錄管理模塊概述 272

9.6.2 添加背景 272

9.6.3 實現登錄功能 273

9.7 單位檔案模塊設計 276

9.7.1 單位檔案模塊概述 276

9.7.2 添加Tab控件 276

9.7.3 實現添加單位功能 277

9.7.4 實現修改單位功能 278

9.7.5 實現刪除單位功能 278

9.7.6 實現標簽切換功能 279

9.8 文檔類別模塊設計 280

9.8.1 文檔類別模塊概述 280

9.8.2 實現確認功能 280

9.8.3 實現添加功能 281

9.8.4 實現修改功能 281

9.8.5 實現刪除功能 282

9.9 文檔管理模塊設計 282

9.9.1 文檔管理模塊概述 282

9.9.2 初始化控件 282

9.9.3 實現查找文件路徑功能 284

9.9.4 實現保存功能 285

9.9.5 實現刪除功能 286

9.9.6 實現自動添加文檔類別功能 287

9.10 口令修改模塊設計 288

9.10.1 口令修改模塊概述 288

9.10.2 實現顯示用戶名功能 288

9.10.3 實現確認功能 288

9.11 項目運行 289

9.12 源碼下載 290

第10章 股票數據抓取分析系統 291

—GDI繪圖 + libcurl第三方庫 + SQL Server數據庫 + 數據爬取 + K線圖繪制技術

10.1 開發背景 291

10.2 系統設計 292

10.2.1 開發環境 292

10.2.2 業務流程 292

10.2.3 功能結構 292

10.3 技術準備 293

10.3.1 技術概覽 293

10.3.2 繪制股票日數據K線圖 296

10.4 數據庫設計 297

10.4.1 附加數據庫 297

10.4.2 數據庫表介紹 297

10.4.3 數據庫操作 299

10.5 登錄模塊設計 305

10.5.1 登錄模塊概述 305

10.5.2 實現登錄功能 305

10.5.3 實現取消功能 306

10.6 主窗體模塊設計 306

10.6.1 主窗體模塊概述 306

10.6.2 主窗體和各模塊功能組織方式 307

10.6.3 實現窗口顯示隱藏的切換功能 308

10.7 公式選股模塊設計 309

10.7.1 公式選股模塊概述 309

10.7.2 解析公式 309

10.7.3 運行公式 310

10.8 數據管理模塊設計 312

10.8.1 數據管理模塊概述 312

10.8.2 實現基礎數據維護功能 312

10.8.3 實現導入導出數據功能 314

10.8.4 實現歷史數據查詢功能 316

10.9 品種管理模塊設計 318

10.9.1 品種管理模塊概述 318

10.9.2 實現品種維護功能 318

10.9.3 實現選擇品種功能 321

10.10 工具模塊設計 323

10.10.1 工具模塊概述 323

10.10.2 實現金融計算器功能 323

10.10.3 實現屏幕截圖功能 325

10.10.4 實現系統設置功能 326

10.11 項目運行 330

10.12 源碼下載 330