Visual C++完全自學手冊

《VisualC++完全自學手冊》是2009年機械工業出版社出版的圖書,作者是古萬榮。本書含有大量實例,詳細描述實例開發過程和挖掘理論實踐要點。

圖書信息

叢書名: 編程紅寶書

平裝: 430頁

正文語種: 簡體中文

開本: 16

ISBN: 9787111256540

條形碼: 9787111256540

尺寸: 25.6 x 20.2 x 2.4 cm

重量: 939 g

內容簡介

《Visual C++完全自學手冊》的特點是詳細介紹了使用VC6.0進行C++程式設計,從C++語言理論,到MFC庫的使用和COM組件等擴展知識的剖析,突出了理論嚴謹性和程式實用性。

Visual C++6.0(以下簡稱VC6.0)是微軟精心打造的集成開發環境,使用VC6.0可以自由地開發MFC應用程式、Win32應用程式、DLL組件和Web服務程式等。VC6.0的核心是MFC庫,《Visual C++完全自學手冊》著重介紹MFC庫的原理和使用方法,循環漸進地講解了MFC庫的知識,從基本概念到具體實踐、從理論本質到具體操作、從小型實例到大中型綜合實例。在《Visual C++完全自學手冊》的各個知識點中,都會給出相應的實例進行知識點的鞏固和提高,通過實踐練習來消化知識點和相關套用。

《Visual C++完全自學手冊》適合需要學習VC6.O進行應用程式開發的讀者閱讀,也可以作為開發人員的參考手冊隨時進行查閱。

目錄

寫給自學編程的人員

前言

第一篇 C++、VC6.0和應用程式框架基礎

第1章 VC6.0開發環境和應用程式框架 1

1.1 安裝並測試VC6.0 1

1.1.1 VC6.0的安裝 1

1.1.2 VC6.0開發環境 6

1.1.3 VC6.0應用程式嚮導和項目創建 7

1.2 VC6.0簡介 10

1.2.1 C/C++編譯器 11

1.2.2 編輯器 11

1.2.3 資源編輯器和資源符號 12

1.2.4 連線器和調試器 13

1.2.5 VC6.0的主要選單項功能 13

1.2.6 項目和解決方案 21

1.2.7 本機幫助和在線上幫助 21

1.3 Win32基本應用程式的創建 22

1.3.1 使用AppWizard應用程式嚮導 22

1.3.2 Win32應用程式的生成 22

1.3.3 VC6.0的調試:變數跟蹤和函式調用棧 27

1.4 Microsoft應用程式框架 28

1.4.1 全局對象 28

1.4.2 MFC的訊息映射和訊息分類 29

1.5 實例1.1-編寫第一個C++程式:Hello, C++! 29

1.6 實例1.2-創建第一個MFC程式:Hello, MFC! 32

1.7 小結 33

第2章 C++語法基礎 34

2.1 C++簡介 34

2.2 數據類型定義和使用 35

2.2.1 簡單變數 35

2.2.2 算術運算符 39

2.2.3 枚舉、指針和數組 40

2.2.4 string類和C風格字元串 43

2.2.5 結構體類型 44

2.2.6 類類型 46

2.2.7 實例2.1-成績管理系統(1.0版) 49

2.3 運算符、表達式和語句 54

2.3.1 幾種常用的運算符 54

2.3.2 循環語句:for語句、while語句和do...while語句 55

2.3.3 判斷語句:if語句和switch語句 57

2.3.4 實例2.2-成績管理系統(2.0版) 61

2.4 函式定義和調用 64

2.4.1 定義函式和函式原型 64

2.4.2 函式通過指針來調用數組 65

2.4.3 函式指針 66

2.4.4 具有引用參數的函式 67

2.4.5 函式重載 70

2.4.6 函式模板的定義和使用 71

2.4.7 實例2.3-成績管理系統(3.0版) 72

2.5 類的定義和對象構造 74

2.5.1 自然界中的類型和C++的類定義 74

2.5.2 實現類成員函式 76

2.5.3 實例化類對象並使用 78

2.5.4 類的構造函式和析構函式 79

2.5.5 運算符重載與this指針的使用 81

2.5.6 友元函式和友元類 83

2.5.7 實例2.4-成績管理系統(4.0版) 86

2.6 類繼承 90

2.6.1 is-a關係 90

2.6.2 多態公有繼承 92

2.6.3 protected訪問控制 94

2.6.4 抽象基類 95

2.6.5 私有繼承和保護繼承 96

2.6.6 多繼承 96

2.6.7 類模板 97

2.7 C++異常機制 98

2.7.1 異常處理類型 98

2.7.2 exception類 100

2.8 標準模板庫(STL) 100

2.8.1 auto_ptr類的使用 101

2.8.2 vector模板類的定義和使用 101

2.8.3 通用算法 102

2.8.4 實例2.5-使用STL和通用算法開發成績管理系統(5.0版) 104

2.9 I/O流和檔案 109

2.9.1 C++的輸入和輸出 109

2.9.2 檔案輸入和輸出 109

2.9.3 實例2.6-在VC6.0 中創建C++源檔案,使用磁碟檔案讀寫 110

2.10 小結 111

第二篇 MFC基礎

第3章 Windows訊息映射 113

3.1 視圖類 113

3.2 應用程式的類型 114

3.3 資源編輯器 115

3.4 MFC應用程式中的各種子功能 116

3.5 訊息映射函式和Windows映射模式 121

3.5.1 獲取用戶單擊和輸入 121

3.5.2 MM_TEXT映射模式 121

3.5.3 固定比例映射模式 122

3.5.4 可變比例映射模式 122

3.5.5 坐標轉換 122

3.6 其他Windows訊息 123

3.7 實例-訊息映射函式的使用 123

3.8 小結 128

第4章 GDI函式 129

4.1 設備環境類 129

4.1.1 CDC類及其派生類簡介 129

4.1.2 CDC類對象的行為函式 130

4.2 GDI對象的構造和使用 132

4.3 字型選擇和顯示 132

4.4 實例4.1-字型的使用 133

4.5 GDI點陣圖和DIB點陣圖 135

4.6 實例4.2-點陣圖的使用 136

4.7 小結 141

第5章 對話框 142

5.1 兩種不同類型的對話框 142

5.2 實例5.1-計算器軟體的開發 142

5.3 實例5.2-模式對話框的創建和使用 147

5.4 Windows通用對話框 150

5.4.1 CFileDialog類-檔案打開對話框的使用 151

5.4.2 CColorDialog類-調色板對話框的使用 152

5.4.3 CFindReplaceDialog類-字詞查找和替換對話框的使用 153

5.4.4 CPageSetupDialog類-頁面設定對話框的使用 154

5.4.5 CFontDialog類-字型設定對話框的使用 156

5.4.6 CPrintDialog類-列印設定對話框的使用 157

5.5 無模式對話框 157

5.6 小結 158

第6章 控制項 160

6.1 VC6.0資源和通用控制項 160

6.2 VC6.0的控制項工具箱 160

6.3 實例6.1-簡單控制項的使用 162

6.4 標準通用控制項 165

6.4.1 進度指示器控制項 165

6.4.2 劃塊控制項 165

6.4.3 列表控制項 166

6.4.4 樹狀控制項 166

6.5 實例6.2-標準通用控制項的使用 167

6.6 實例6.3-成績管理系統(6.0版-Windows版) 170

6.7 小結 183

第7章 Windows的基本輸入 184

7.1 鍵盤訊息及其處理 184

7.1.1 鍵盤訊息的處理 184

7.1.2 鍵盤訊息處理函式 185

7.1.3 實例7.1-鍵盤訊息處理 186

7.2 滑鼠訊息及其處理 190

7.2.1 滑鼠訊息的處理 190

7.2.2 滑鼠訊息處理函式 190

7.2.3 實例7.2-滑鼠訊息處理(五子棋遊戲) 191

7.3 小結 203

第8章 ActiveX控制項 204

8.1 ActiveX控制項的特殊性 204

8.1.1 ActiveX控制項和普通控制項的相同點 204

8.1.2 ActiveX控制項和普通控制項的不同點 204

8.2 安裝ActiveX控制項 205

8.3 實例-ActiveX控制項:日曆控制項的創建 206

8.4 ActiveX控制項在Web編程中的使用 208

8.5 圖形屬性和變化通知 209

8.6 小結 210

第三篇 深入學習MFC

第9章 選單和框架視窗 211

9.1 Windows應用程式的框架視窗 211

9.2 Windows選單和MFC選單編輯器 211

9.3 Windows應用程式的快捷鍵 212

9.4 命令處理的使用 213

9.5 復文本編輯 214

9.5.1 編輯視圖類:CEditView類 214

9.5.2 復文本編輯視圖類:CRichEditView類 214

9.5.3 復文本編輯控制項類:CRichEditCtrl類 214

9.6 實例-快捷鍵和文本編輯使用 214

9.6.1 基本框架和界面實現 215

9.6.2 快捷鍵設計 217

9.6.3 存儲和顯示文檔類中的文本 218

9.6.4 選項卡對話框的設計 219

9.6.5 視圖類的功能實現 221

9.6.6 運行效果和實踐小結 223

9.7 屬性表的開發過程 223

9.8 滑鼠右鍵調用的浮動快捷選單 224

9.9 CPersistentFrame持續信息類的使用 225

9.10 使用ActivateFrame( )成員函式設定視窗尺寸和位置 226

9.11 創建視窗之前的工作:PreCreateWindow成員函式 226

9.12 控制欄狀態和Windows註冊表 227

9.13 MDI應用程式和持續框架 227

9.14 小結 228

第10章 工具列和狀態欄 229

10.1 MFC應用程式框架和控制欄 229

10.2 工具列按鈕 229

10.2.1 工具列點陣圖和按鈕的狀態 229

10.2.2 命令訊息和更新命令控制函式 230

10.3 工具列的提示信息 230

10.4 實例10.1-使用工具列的應用程式 231

10.5 狀態欄的定義和顯示 235

10.5.1 狀態欄的定義 235

10.5.2 信息行的顯示 235

10.5.3 狀態指示器 236

10.6 實例10.2-使用狀態欄的程式設計 237

10.7 小結 238

第11章 文檔和視圖的分離 239

11.1 文檔和視圖相互作用的函式 239

11.1.1 獲取當前文檔:CView::GetDocument()函式 239

11.1.2 更新所有視圖:CDocument::UpdateAllViews()函式 240

11.1.3 視圖自我更新:CViews::OnUpdate()函式 240

11.1.4 初始化更新界面:CView::OnInitialUpdate()函式 240

11.1.5 創建新文檔:CDocument::OnNewDocument()函式 240

11.2 一個簡單的文檔視圖應用程式的創建和分析 240

11.3 CView類的派生類 241

11.4 MFC類家族的始祖-CObject類 241

11.5 診斷信息轉儲基礎 242

11.5.1 TRACE宏的使用 242

11.5.2 AfxDump對象的使用 242

11.5.3 MFC的信息轉儲環境 243

11.6 實例11.1-使用診斷信息進行文檔視圖互動 245

11.6.1 項目創建和界面設計 245

11.6.2 CWorker類的設計 246

11.6.3 診斷信息和文檔視圖互動功能的實現 248

11.7 高級的文檔和視圖互動 250

11.8 CObList集合類 252

11.9 實例11.2-一個多視圖的SDI應用程式 253

11.9.1 項目創建和界面設計 253

11.9.2 編寫文檔代碼 254

11.9.3 編寫視圖代碼 254

11.10 小結 257

第12章 文檔的讀和寫 258

12.1 序列化理論 258

12.1.1 磁碟檔案和記憶體檔案 258

12.1.2 類的序列化 259

12.1.3 編寫Serialize( )函式 259

12.2 Windows應用程式對象 260

12.3 實例12.1-支持序列化的應用程式 260

12.3.1 創建支持序列化的MFC應用程式 260

12.3.2 重寫CObject基類的序列化函式 261

12.3.3 編寫界面功能 262

12.3.4 開發序列化和反序列化功能 263

12.4 應用程式在Windows中的註冊 264

12.5 MDI應用程式 265

12.5.1 MDI應用程式對象 265

12.5.2 MDI文檔模板類 265

12.5.3 MDI視窗類型 266

12.5.4 創建文檔 266

12.6 實例12.2-MDI應用程式的創建 266

12.7 MTI支持 268

12.8 小結 268

第13章 切分視窗和多視圖 269

13.1 動態和靜態切分視窗 269

13.2 關於視圖的選擇 269

13.3 實例13.1-簡單動態切分視窗應用程式的創建 270

13.4 實例13.2-多視圖的靜態切分視窗的開發 272

13.5 實例13.3-多視圖切換的開發 274

13.6 小結 276

第14章 列印功能 277

14.1 Windows環境下的列印功能 277

14.2 列印預覽 277

14.3 列印程式設計的相關接口 278

14.3.1 印表機設備環境 278

14.3.2 列印函式:CView::OnPrint( )函式 278

14.3.3 列印程式的執行過程 278

14.4 實例14.1-列印應用程式的創建和使用 279

14.5 實例14.2-多頁列印應用程式的創建和使用 282

14.6 小結 285

第15章 上下文相關幫助 286

15.1 簡易WinHelp的製作 286

15.2 應用程式框架WinHelp 288

15.2.1 調用WinHelp 288

15.2.2 使用搜尋功能 288

15.2.3 訊息框幫助 289

15.3 實例-幫助示例 289

15.4 幫助快捷命令 293

15.4.1 使用F1鍵 293

15.4.2 通過選單命令調用幫助過程 293

15.5 小結 293

第16章 動態程式庫(DLL) 294

16.1 DLL理論基礎 294

16.1.1 DLL導入和導出的原理 295

16.1.2 隱式和顯式連線 295

16.1.3 符號和序號連線 295

16.1.4 DllMain()函式 295

16.2 正規的MFC DLL和擴展的MFC DLL 296

16.2.1 正規的DLL 296

16.2.2 擴展的DLL 298

16.3 自定義控制項DLL 299

16.4 實例-創建和使用自定義控制項DLL 300

16.4.1 創建項目 300

16.4.2 添加功能代碼 300

16.4.3 創建客戶程式測試自定義控制項 302

16.5 小結 304

第17章 MFC類家族 305

17.1 MFC類家族結構 305

17.2 MFC運行機制 306

17.3 MFC家族分支 307

17.3.1 CView視圖類分支 307

17.3.2 CDC畫圖類分支 308

17.3.3 CException異常類分支 309

17.3.4 CGdiObject類分支 310

17.3.5 套接字類分支 310

17.4 非CObject派生類 311

17.4.1 簡單類型類 311

17.4.2 Internet Server API類 311

17.5 小結 312

第四篇 自動化、COM和OLE

第18章 自動化 313

18.1 什麼是VBA 313

18.2 VBA與C++組件 313

18.3 自動化接口 314

18.4 MFC自動化組件 315

18.5 實例18.1-MFC自動化的使用 316

18.5.1 創建MFC DLL自動化項目 316

18.5.2 添加自動化類和成員函式 316

18.5.3 在Windows中註冊自定義的dll動態程式庫 320

18.5.4 使用非VC應用程式調用自定義dll 320

18.5.5 實例小結 321

18.6 VARIANT類型 322

18.7 封裝VARIANT類型:COleVariant類 323

18.8 實例18.2-使用Excel自動化的實例 325

18.8.1 準備工作:創建MFC 325

18.8.2 加入自動化代碼 326

18.8.3 添加組件類 326

18.8.4 編寫客戶端宏腳本 329

18.9 小結 330

第19章 組件對象模型(COM) 331

19.1 什麼是COM 331

19.2 COM接口 332

19.3 實例-COM的使用 333

19.3.1 使用VC6.0創建ATL COM應用程式 334

19.3.2 創建新的ATL對象 335

19.3.3 實現_IDTExtensibility2接口 335

19.3.4 通知Office並載入組件接口 337

19.3.5 導入Office接口檔案 338

19.3.6 完成功能代碼 338

19.3.7 運行效果和小結 340

19.4 COM的包容、集合和繼承 341

19.5 小結 341

第20章 OLE DB 342

20.1 OLE DB 對象模型 342

20.2 OLE DB模板的基本結構 343

20.3 OLE DB客戶資料庫訪問的兩種途徑 344

20.3.1 以MFC AppWizard(exe)為嚮導建立OLE DB客戶程式框架 344

20.3.2 以ATL COM AppWizard為嚮導建立OLE DB客戶程式框架 346

20.4 小結 348

第五篇 軟體研發實踐

第21章 資料庫編程基礎 349

21.1 資料庫開發技術簡介 349

21.1.1 常用的幾種資料庫管理系統DBMS 349

21.1.2 關係代數與資料庫SQL語言 350

21.1.3 規範化和資料庫表設計常見的問題 352

21.1.4 ODBC、DAO和ADO技術簡介 353

21.2 在VC6.0中使用ODBC進行資料庫連線 353

21.2.1 ODBC概述 354

21.2.2 ODBC類的使用 354

21.2.3 ODBC資料庫操作 356

21.3 在VC6.0中使用ADO進行資料庫連線 357

21.3.1 ADO概述 357

21.3.2 ADO連線套用 357

21.3.3 ADO資料庫操作 359

21.4 小結 361

第22章 資料庫研發實踐:家庭財務管理系統 362

22.1 提出問題:設計一個家庭財務管理系統 362

22.1.1 概要功能 362

22.1.2 界面需求 362

22.2 資料庫設計 363

22.2.1 數據關係分析 363

22.2.2 E-R圖設計 364

22.2.3 資料庫表的生成 365

22.3 算法設計 366

22.3.1 連線資料庫 366

22.3.2 添加數據 367

22.3.3 修改資料庫內容 368

22.3.4 統計資料庫信息 368

22.4 軟體項目開發過程 368

22.4.1 開發家庭財務管理系統項目的流程 368

22.4.2 根據E-R圖創建資料庫表 368

22.4.3 功能研發的準備工作 371

22.4.4 實現算法設計 374

22.4.5 測試 377

22.5 小結 378

第23章 網路編程基礎 379

23.1 TCP/IP簡介 379

23.2 Windows Sockets基礎 380

23.2.1 套接字概述 381

23.2.2 WinSock API常用函式 381

23.2.3 MFC對WinSock API的封裝 382

23.3 B/S模式和C/S模式 382

23.3.1 什麼是B/S和C/S模式 382

23.3.2 C/S與B/S的區別 383

23.4 區域網路技術 384

23.4.1 網卡地址 384

23.4.2 獲取計算機名稱和IP 384

23.5 信息打包和傳送 385

23.6 小結 386

第24章 網路編程研發實踐:即時通信軟體 387

24.1 網路編程實例:即時通信系統 387

24.1.1 功能需求 387

24.1.2 項目系統模型 388

24.1.3 系統設計思路 388

24.1.4 功能分析和設計難點 389

24.1.5 設計難點的解決方案 391

24.2 軟體項目開發過程:伺服器端應用程式 392

24.2.1 創建一個支持套接字的MFC伺服器端程式 392

24.2.2 實現界面設計 393

24.2.3 定義類設計 394

24.2.4 實現類設計中的函式 396

24.2.5 實現界面功能按鈕 403

24.2.6 測試 406

24.3 軟體項目開發過程:客戶端應用程式 407

24.3.1 創建一個支持套接字的MFC客戶端程式 407

24.3.2 實現界面設計 407

24.3.3 定義類設計和實現類設計中的函式 408

24.3.4 實現界面功能按鈕 408

24.3.5 測試 410

24.4 小結 410

第25章 仿3D遊戲開發:推箱子遊戲 411

25.1 目前的PC遊戲種類簡介 411

25.2 仿3D遊戲:推箱子遊戲開發的基礎和概要設計 411

25.2.1 Win32 SDK程式基礎 412

25.2.2 需求分析 413

25.2.3 遊戲規則和效果 413

25.2.4 技術難點的解決方案 414

25.3 遊戲項目開發過程 414

25.3.1 創建Win32應用程式 415

25.3.2 類設計 415

25.3.3 地圖設計和讀取 417

25.3.4 類的實現 418

25.3.5 Win32應用程式訊息處理和場景顯示 420

25.4 小結 422

附錄 VC操作小技巧 423

相關詞條

相關搜尋

熱門詞條

聯絡我們