C++是近年來國內外廣泛使用的高級計算機語言,它既包含了面向過程的程序設計,也包含了面向對象的程序設計,國內外許多大中專院校都開設了“C++面向對象程序設計”這門課程。但是,C++中概念較多、知識面覆蓋較廣、需要C語言作為基礎等特點,使得基礎薄弱的學生在學習過程中吃力,掌握起來難度較大。
本書從初學者的需求出發(fā),配合高校應用型人才的培養(yǎng)目標,培養(yǎng)嵌入式專業(yè)的學生掌握交互式界面開發(fā)的基礎知識,以及解決專業(yè)領域實際問題的能力。同時,本書注重教材的可讀性和實用性,以理論講解結合案例分析和編程實例的方式組織內容,循序漸進,符合讀者的認知過程。本書內容全面細致,構架清晰完整,實用性強,特別適合編程的初學者,可作為大中專應用型電子、計算機類相關專業(yè)教材和學習參考資料。
本書從初學者的需求出發(fā),配合高校應用型人才的培養(yǎng)目標,培養(yǎng)嵌入式專業(yè)的學生掌握交互式界面開發(fā)的基礎知識,以及解決專業(yè)領域實際問題的能力。同時,本書注重教材的可讀性和實用性,以理論講解結合案例分析和編程實例的方式組織內容,循序漸進,符合讀者的認知過程。
面向對象程序設計以其顯著的優(yōu)勢成為計算機軟件領域的主流技術。產業(yè)界需要大量掌握面向對象方法和技術的人才,這些人才不僅能夠使用面向對象語言進行編程,更重要的是能運用面向對象方法進行系統(tǒng)建模。集合面向對象方法之長,使用多的就是MFC技術,這是一種定義良好、易于表達、功能強大、隨時代發(fā)展且適用于各種應用領域的面向對象的編程技術。掌握MFC編程,不僅有助于理解面向對象的分析與設計方法,也有助于理解軟件開發(fā)全過程。
本書在系統(tǒng)地介紹面向對象技術的基本概念和方法的基礎上,重點介紹MFC及其技術、方法與應用,以及得到業(yè)界廣泛認同的軟件設計模式,軟件開發(fā)的過程、規(guī)程與實踐。本書是作者多年來進行軟件系統(tǒng)開發(fā)實踐和教學的一次經(jīng)驗總結。教材中的諸多實際問題和應用案例,都取材于軟件系統(tǒng)開發(fā)的實踐,并按照教學的要求進行了模型簡化與規(guī)范。顯然,這些源于實踐的工程問題,對提高軟件系統(tǒng)分析與設計的教學的實踐性和實用性,將具有很好的示范效應。
我們希望本書不僅可以作為高等院校計算機或軟件工程專業(yè)的大中專的教學參考讀物,而且可以作為從事軟件系統(tǒng)的研制、開發(fā)、管理和維護的軟件人員的參考書。
全書共18章,由基礎篇、提高篇和實踐篇三大部分組成,基礎篇包括第1章到第7章,提高篇包括第8章到第13章,實踐篇包括第14章到第18章。各章節(jié)主要內容如下:
基礎篇
第1章C++的初步認識,主要介紹了C++的概述、使用C++編寫的第1個程序和C++上機實踐入門。
第2章數(shù)據(jù)類型和運算規(guī)則,主要介紹了數(shù)據(jù)與數(shù)據(jù)類型、常量與變量、C++中的運算符等。
第3章基礎的程序設計結構,主要介紹了程序設計和算法,C++程序結構、語句和注釋,C++的輸入和輸出,順序、選擇、循環(huán)結構程序設計。
第4章數(shù)組的使用,主要介紹了一維數(shù)組、二維數(shù)組和字符數(shù)組的使用。
第5章函數(shù)的使用,主要介紹了函數(shù)的定義和調用、函數(shù)間的參數(shù)傳遞、函數(shù)的嵌套調用和遞歸調用、函數(shù)模板、函數(shù)重載等內容。
第6章指針的使用,主要介紹了地址和指針的概念、const指針、指針變量的引用等內容。
第7章結構體和共用體,主要介紹了結構體類型、共用體類型、枚舉類型和自定義類型。
提高篇
第8章類和對象,主要介紹了類的聲明和對象的定義、類的成員、對象成員的引用,類的封裝性和隱蔽性。
第9章類和對象的使用,主要介紹了構造函數(shù)和析構函數(shù)、常對象、new和delete的使用、靜態(tài)成員、友元等內容。
第10章繼承與派生,主要介紹了派生類的構成和聲明、多重繼承、賦值兼容性規(guī)則等內容。
第11章多態(tài)性與虛函數(shù),主要介紹了多態(tài)性的概念、虛函數(shù)的使用、純虛函數(shù)和抽象類。
第12章運算符重載,主要介紹了運算符重載的方法和規(guī)則,重載單目、雙目運算符。
第13章輸入輸出流,主要介紹了C++的輸入輸出流、文件流和對數(shù)據(jù)文件的操作等內容。
實踐篇
第14章MFC編程概述,主要介紹了MFC的設計運行原理、Visual C++常用操作、MFC的Hello World程序等內容。
第15章窗口和對話框,主要介紹了框架窗口、通用對話框和消息對話框等內容。
第16章常用控件,主要介紹了靜態(tài)控件和按鈕、編輯框和旋轉按鈕控件、列表框、進度條和日歷控件、滾動條和滑動條等內容。
第17章基本界面元素,主要介紹了圖標和光標、菜單、交互對象的動態(tài)更新等內容。
第18章基于對話框的編程,主要介紹了創(chuàng)建基于對話框的應用、應用界面的可視化設計、菜單的創(chuàng)建和應用,并設計了一個簡單的計算器程序。
由于時間倉促,編者水平有限,書中難免存在不足及疏漏之處,歡迎讀者批評指正,提出寶貴的意見。
第1篇基礎篇
第1章C++的初步認識/2
1.1關于面向對象程序設計/2
1.2第1個程序/4
1.3C++程序的構成和書寫形式/7
1.4C++程序的編寫和實現(xiàn)/8
1.5關于C++上機實踐/9
第2章數(shù)據(jù)類型和運算規(guī)則/12
2.1數(shù)據(jù)與數(shù)據(jù)類型/12
2.2常量/14
2.3變量/19
2.4C++中的運算符/21
2.5算術運算符與算術表達式/22
2.6賦值運算符與賦值表達式/25
2.7關系運算、邏輯運算和位運算/27
2.8其他運算/30
第3章基礎的程序設計結構/34
3.1程序設計和算法/34
3.2C++程序結構、語句和注釋/35
3.3C++的輸入與輸出/38
3.4順序結構程序設計/44
3.5選擇結構程序設計/45
3.6循環(huán)結構程序設計/53
第4章數(shù)組的使用/65
4.1使用數(shù)組的好處/65
4.2一維數(shù)組的使用/66
4.3二維數(shù)組的使用/69
4.4字符數(shù)組/73
4.5用數(shù)組做函數(shù)參數(shù)/80
4.6字符串類和字符串變量/83
第5章函數(shù)的使用/91
5.1使用函數(shù)的好處/91
5.2函數(shù)的定義和調用/92
5.3函數(shù)間的參數(shù)傳遞/95
5.4函數(shù)的嵌套調用和遞歸調用/97
5.5局部變量和全局變量/102
5.6變量的作用域和變量存儲類別/105
5.7內置函數(shù)/113
5.8函數(shù)的重載/114
5.9函數(shù)模板/115
5.10有默認參數(shù)的函數(shù)/116
5.11內部函數(shù)和外部函數(shù)/118
第6章指針的使用/123
6.1使用指針的好處/123
6.2地址和指針的概念/123
6.3變量與指針/124
6.4數(shù)組與指針/130
6.5字符串與指針/142
6.7返回指針值的函數(shù)/147
6.8const指針/148
6.9指針變量的引用/151
第7章結構體和共用體/155
7.1結構體類型/155
7.2共用體類型/169
7.3枚舉類型和自定義類型/171
第2篇提高篇
第8章類和對象/180
8.1面向對象的程序設計方法/180
8.2類的聲明和對象的定義/185
8.3類的成員/191
8.4對象成員的引用/194
8.5類的封裝性和隱蔽性/196
8.6類和對象的應用舉例/200
第9章類和對象的使用/205
9.1構造函數(shù)/205
9.2析構函數(shù)/212
9.3調用構造函數(shù)和析構函數(shù)的順序/214
9.4對象數(shù)組/215
9.5對象指針/216
9.6常對象/219
9.7new和delete的使用/221
9.8對象的賦值和復制/222
9.9靜態(tài)成員/227
9.10友元/231
9.11類模板/235
第10章繼承與派生/246
10.1什么是繼承與派生/246
10.2派生類的構成和聲明/247
10.3派生類的成員訪問控制屬性/248
10.4派生類的構造函數(shù)和析構函數(shù)/255
10.5多重繼承/261
10.6賦值兼容性規(guī)則/269
10.7繼承與聚合/272
第11章多態(tài)性與虛函數(shù)/281
11.1多態(tài)性的概念/281
11.2虛函數(shù)的使用/281
11.3純虛函數(shù)和抽象類/286
第12章運算符重載/296
12.1運算符重載的概念/296
12.2運算符重載的方法和規(guī)則/297
12.3運算符重載函數(shù)作為類成員函數(shù)和友元函數(shù)/300
12.4重載單目、雙目運算符/302
第13章輸入輸出流/310
13.1C++的輸入輸出流/310
13.2標準輸出流/311
13.3標準輸入流/315
13.4文件流和對數(shù)據(jù)文件的操作/318
13.5字符串流/326
第3篇實踐篇
第14章MFC編程概述/330
14.1什么是MFC/330
14.2MFC的設計運行原理/331
14.3MFC的優(yōu)點/332
14.4MFC的層次結構/333
14.5消息和消息映射/334
14.6MFC基于框架的Hello World程序/338
14.7AppWizard和ClassWizard的用法/340
第15章窗口和對話框/348
15.1框架窗口/348
15.2創(chuàng)建對話框/351
15.3使用對話框/353
15.4通用對話框和消息對話框/358
第16章常用控件/360
16.1創(chuàng)建和使用控件/360
16.2靜態(tài)控件和按鈕/364
16.3編輯框和旋轉按鈕控件/369
16.4列表框/375
16.5組合框/382
16.6進度條和日歷控件/386
16.7滾動條和滑動條/389
第17章基本界面元素/398
17.1圖標/398
17.2光標/399
17.3菜單/401
17.4工具欄/406
第18章基于對話框的編程/415
18.1創(chuàng)建計算器應用程序/415
18.2繪制應用程序界面/416
18.3按鈕響應行為的編碼/419
18.4計算功能的實現(xiàn)/422
18.5菜單功能的實現(xiàn)/429