本書從最基本的概念出發(fā),詳細地講述了使用Visual C++ 進行面向對象和可視化程序設計的基礎、原理與方法。全書共分14章,第1~5章主要介紹C++語言的基本編程技術,包括C++基礎知識、類和對象、運算符重載、繼承與派生、多態(tài)性與虛函數;第6~11章主要介紹使用MFC編程進行可視化編程的方法,包括MFC編程的基本知識、屏幕繪圖及文本顯示、鍵盤與鼠標、Windows控件、資源、單文檔與多文檔;第12~14章主要介紹高級編程應用,包括數據庫編程、多媒體編程、Internet編程。 本書既可以作為高等院校計算機科學與技術及相關專業(yè)“面向對象程序設計”課程的授課教材,也可以作為C++程序開發(fā)人員的參考書。
1. 注重理論、培養(yǎng)能力。本書既注重理論知識的介紹,又強調項目開發(fā)能力的提高;
每章的知識點通過例題來介紹,實例中附有較為詳細的步驟說明及代碼,通過學習不僅學會面向對象程序設計的基本概念和方法,還能夠掌握MFC可視化程序開發(fā)技巧,培養(yǎng)動手能力。
2. 講解直觀、項目開發(fā)易學易懂,結構合理且實用。本書配備了豐富的圖例說明,對項目開發(fā)過程的介紹簡潔直觀,容易理解;以綜合應用程序的方式把相關知識點的內容串聯(lián)起來,使項目開發(fā)可以循序漸進、輕松上手。
3. 語言簡潔,易懂易用。本書用語簡單、易于理解,使讀者能夠更容易理解理論知識。
4. 是教材又是工具書和實訓指導書。本書既詳細介紹了面向對象程序設計的理論,又系統(tǒng)地闡述了MFC的具體應用。采用案例驅動法講解相關技術,所有例題都在Windows 2000及VC++6.0環(huán)境下調試運行通過。
5. “一站式服務”。提供配套教學資源,包括本書中所有示例及項目源代碼、教學課件、教學日歷、教學大綱、課后習題參考答案、期末自測試卷(可在清華大學出版社網站下載:www.tup.com.cn)。另外,提供QQ和郵箱服務,使技術交流和項目開發(fā)更加快速便捷,并方便獲取更多的其它相關資料。
第1章C++基礎知識1
1.1語法與基本數據類型1
1.1.1C++語言語法1
1.1.2基本數據類型1
1.2常量與變量2
1.2.1常量2
1.2.2變量3
1.3運算符與表達式4
1.3.1運算符4
1.3.2表達式5
1.3.3表達式類型轉換5
1.4語句6
1.4.1控制語句6
1.4.2其他語句10
1.5指針10
1.5.1指針變量的定義10
1.5.2兩個重要運算符11
1.5.3指針變量的賦值11
1.5.4指針變量作函數參數11
1.5.5引用12
1.6函數12
1.6.1函數的分類13
1.6.2函數的定義13
1.6.3形參與實參14
1.6.4函數的調用14
1.7標準輸入輸出流15
1.7.1標準輸入輸出流格式15
1.7.2標準流的幾點說明15
習題16第2章類和對象18
2.1面向對象程序設計18
2.2類和對象19
2.2.1類和對象的關系19
2.2.2類的概念和定義方法20
2.2.3對象的概念和定義方法21
2.2.4對象成員的訪問方法22
2.2.5成員函數的定義23
2.2.6this指針24
2.3構造函數和析構函數25
2.3.1構造函數25
2.3.2析構函數30
2.3.3拷貝構造函數32
2.4靜態(tài)成員33
2.4.1靜態(tài)數據成員34
2.4.2靜態(tài)成員函數36
2.5對象指針37
2.5.1指向類對象的指針37
2.5.2指向對象成員的指針38
2.6友元39
2.6.1友元函數40
2.6.2友元類41
習題43第3章運算符重載44
3.1什么是運算符重載44
3.2重載運算符的規(guī)則44
3.3運算符重載函數作為類的成員函數45
3.4運算符重載函數作為類的友元函數48
3.5重載++和--運算符52
3.6重載流插入運算符和流提取運算符54
習題56第4章繼承與派生57
4.1繼承與派生的概念57
4.2單繼承58
4.2.1單繼承的定義方式58
4.2.2派生類的成員構成59
4.2.3派生類成員的訪問屬性60
4.2.4派生類的構造函數63
4.2.5派生類的析構函數65
4.3多重繼承67
4.3.1多重繼承的定義方式67
4.3.2多重繼承派生類的構造函數與析構函數68
4.3.3多重繼承的二義性69
4.3.4虛基類70
習題73第5章多態(tài)性與虛函數74
5.1多態(tài)性74
5.1.1多態(tài)的類型74
5.1.2函數重載74
5.1.3聯(lián)編77
5.2虛函數77
5.3純虛函數和抽象類81
5.3.1純虛函數81
5.3.2抽象類82
習題82第6章MFC編程83
6.1Windows編程基礎知識83
6.1.1事件驅動原理83
6.1.2基本概念85
6.1.3常用的數據結構86
6.2MFC概述88
6.3MFC類的層次結構及類簡介88
6.3.1程序結構類88
6.3.2窗口類89
6.3.3圖形類91
6.3.4部分非CObject派生類92
6.4用AppWizard建立MFC應用程序92
6.4.1MFC應用程序類型92
6.4.2MFC的AppWizard創(chuàng)建應用程序的步驟93
6.4.3應用程序向導生成的類和文件98
6.4.4項目工作區(qū)窗口99
6.5消息和消息映射100
6.5.1消息的結構100
6.5.2消息的種類101
6.5.3消息映射102
6.6常用的類的操作107
習題110第7章屏幕繪圖及文本顯示111
7.1GDI與設備描述表111
7.1.1GDI的基本概念111
7.1.2設備描述環(huán)境111
7.2CDC類112
7.3映射模式114
7.3.1設備坐標114
7.3.2邏輯坐標114
7.3.3映射模式的相關設置115
7.4繪圖工具的使用116
7.4.1GDI繪圖工具介紹116
7.4.2畫筆117
7.4.3畫刷119
7.5繪圖模式122
7.6常用CDC類繪圖函數123
7.7繪圖過程及應用實例126
7.8文本輸出129
習題132第8章鍵盤與鼠標133
8.1鼠標133
8.1.1鼠標事件和鼠標消息133
8.1.2鼠標消息處理函數134
8.1.3鼠標應用實例135
8.2鍵盤145
8.2.1鍵盤消息與虛擬鍵代碼145
8.2.2鍵盤消息處理函數146
8.2.3鍵盤應用實例149
習題152第9章Windows控件154
9.1Windows標準控件154
9.1.1控件的創(chuàng)建155
9.1.2控件的管理155
9.1.3控件的通用屬性157
9.1.4常用控件窗口操作函數159
9.2靜態(tài)控件及其應用160
9.2.1靜態(tài)文本控件161
9.2.2組框控件162
9.2.3靜態(tài)圖像控件162
9.3按鈕控件163
9.3.1按鈕控件的種類及消息163
9.3.2按鈕控件的成員函數164
9.3.3命令按鈕165
9.3.4單選按鈕167
9.3.5復選按鈕169
9.4編輯框控件170
9.4.1編輯框屬性171
9.4.2編輯框類的成員函數172
9.4.3編輯框的主要消息173
9.4.4編輯框控件的使用173
9.4.5編輯框編程實例175
9.5列表框控件182
9.5.1列表框的屬性182
9.5.2列表框類的成員函數183
9.5.3列表框的消息185
9.5.4列表框的使用185
9.5.5列表框應用舉例186
9.6組合框控件187
9.6.1組合框屬性188
9.6.2組合框類的成員函數188
9.6.3組合框的消息189
9.6.4組合框的使用189
9.6.5組合框應用舉例190
9.7滾動條控件191
9.7.1滾動條類的成員函數191
9.7.2滾動條控件的使用192
9.7.3滾動條類應用舉例193
9.8滑動條控件195
9.8.1滑動條的屬性195
9.8.2滑動條類的成員函數196
9.8.3滑動條的使用197
9.8.4滑動條類應用舉例197
9.9翻動按鈕控件199
9.9.1翻動按鈕的屬性199
9.9.2翻動按鈕類的成員函數200
9.9.3翻動按鈕應用舉例200
9.10進度條控件201
9.11通用對話框203
9.12消息對話框205
9.13綜合應用206
習題211第10章資源213
10.1菜單213
10.1.1創(chuàng)建和編輯菜單214
10.1.2菜單消息215
10.1.3菜單應用實例216
10.2加速鍵223
10.3工具欄224
10.3.1增加工具欄按鈕224
10.3.2工具欄應用實例225
10.4狀態(tài)欄227
10.4.1狀態(tài)欄的實現227
10.4.2狀態(tài)欄應用實例228
10.5圖標資源231
10.6位圖資源233
10.7對話框資源234
10.7.1模態(tài)對話框235
10.7.2非模態(tài)對話框238
習題238第11章單文檔與多文檔240
11.1概述240
11.1.1文檔/視圖結構240
11.1.2SDI程序的創(chuàng)建過程及相關函數241
11.1.3SDI程序的命令消息傳遞過程243
11.2文檔/視圖結構的5個類243
11.3文檔串行化操作245
11.4設置窗口樣式246
11.5SDI編程實例249
11.6MDI簡介252
11.7多文檔編程實例253
11.8類的序列化260
習題264第12章數據庫編程266
12.1ODBC簡介266
12.1.1ODBC的基本構成266
12.1.2配置ODBC數據源267
12.1.3MFC提供的有關ODBC的常用類268
12.2簡單的MFC ODBC數據庫應用編程271
12.3ActiveX控件281
12.3.1使用MSFlexGrid控件281
12.3.2使用RemoteData和DBGrid控件283
12.4多表連接285
12.5ADO簡介288
12.5.1ADO數據庫開發(fā)步驟288
12.5.2ADO三個基本接口289
12.6Access數據庫下的編程實例295
12.7SQL Server數據庫下編程307
12.7.1SQL Server數據庫設置307
12.7.2SQL Server數據庫下編程實例310
習題311第13章多媒體編程313
13.1Windows Media Player控件313
13.2利用Windows Media Player控件實現多媒體編程317
習題322第14章Internet編程323
14.1WinInet簡介 323
14.1.1CInternetSession類323
14.1.2CInternetConnection類324
14.1.3CInternetFile類325
14.1.4CFileFind類325
14.1.5用WinInet類開發(fā)應用程序的一般步驟325
14.2Internet編程實例325
習題330參考文獻331