普通高等院校電子信息類“十一五”規(guī)劃教材:C++面向?qū)ο蟪绦蛟O(shè)計(jì)(附光盤1張)
定 價(jià):38 元
- 作者:鄒建華 ,趙付青 ,張力 編
- 出版時(shí)間:2010/2/1
- ISBN:9787118067002
- 出 版 社:國防工業(yè)出版社
- 中圖法分類:TP312C
- 頁碼:352
- 紙張:膠版紙
- 版次:1
- 開本:16開
《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》共分15章,內(nèi)容包括面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ)、C++語言基礎(chǔ)知識(shí)、類和對(duì)象、繼承與派生、多態(tài)、重載、復(fù)制與轉(zhuǎn)換、模板、I/O流及類庫、C++的異常處理、Visual C++編程基礎(chǔ)、數(shù)據(jù)庫編程、網(wǎng)絡(luò)編程等。同時(shí)為指導(dǎo)學(xué)生快速適應(yīng)上機(jī)環(huán)境,《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》還專門給出了C++的上機(jī)預(yù)備知識(shí),可方便學(xué)生及參考《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》的人員用最少的時(shí)間熟悉上機(jī)環(huán)境。
C++程序設(shè)計(jì)語言是所有程序設(shè)計(jì)語言中最有活力和應(yīng)用最廣的一種。C++程序設(shè)計(jì)的教學(xué)自20世紀(jì)90年代以來,逐步成為各高等學(xué)校尤其是理工科專業(yè)程序設(shè)計(jì)課程的主流!禖++面向?qū)ο蟪绦蛟O(shè)計(jì)》作為目前高校普遍使用的C++面向?qū)ο蟪绦蛟O(shè)計(jì)的教材,通過大量經(jīng)典的程序?qū)嵗,使學(xué)生在掌握C++知識(shí)的同時(shí)提高動(dòng)手編程能力。
《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》可作為普通高等院校計(jì)算機(jī)及相關(guān)專業(yè)的本、專科學(xué)生學(xué)習(xí)C++程序設(shè)計(jì)的參考書,也可作為廣大計(jì)算機(jī)愛好者的自學(xué)指導(dǎo)參考書。
C++語言是在C語言的基礎(chǔ)上發(fā)展起來的,不僅繼承了C語言的原有特點(diǎn),而且引入了面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,是當(dāng)今計(jì)算機(jī)專業(yè)及其相關(guān)專業(yè)的大學(xué)生所必須掌握的程序設(shè)計(jì)語言之一。
很多初學(xué)者都會(huì)提出一個(gè)共同的問題,即怎樣才能學(xué)好C++其實(shí),沒有什么捷徑可走,只有自己動(dòng)手多編寫程序。只有多編寫程序和在計(jì)算機(jī)上調(diào)試程序,才能把C++的語法規(guī)則、編程的基本方法和技巧、各種算法變成實(shí)實(shí)在在的知識(shí)。
目前市場(chǎng)上有關(guān)C十+面向?qū)ο蟪绦蛟O(shè)計(jì)的書很多,但本書有其獨(dú)特的方面,主要體現(xiàn)在如下幾個(gè)方面:(1)突出面向?qū)ο。C++雖然是面向?qū)ο蟮恼Z言,但它從面向過程的語言——C語言發(fā)展演化而來,從面向過程過渡到面向?qū)ο,兩者相互分離,這樣學(xué)生很難在接受面向過程的思想后順利接受相對(duì)復(fù)雜的面向?qū)ο蟮乃枷。處理好面向過程和面向?qū)ο蟮年P(guān)系是非常重要的。我們力圖把面向?qū)ο蠛兔嫦蜻^程結(jié)合起來。本書在第1章引入了面向?qū)ο缶幊碳夹g(shù)的概念和基本過程,使學(xué)生在開始學(xué)習(xí)C++之前就接觸面向?qū)ο缶幊痰母拍,順利?shí)現(xiàn)面向過程向面向?qū)ο蟮霓D(zhuǎn)變。
(2)基本概念及知識(shí)點(diǎn)講解精煉。本書用較少的篇幅講解面向?qū)ο蟮母拍,在基本知識(shí)點(diǎn)的講解過程中盡量使用淺顯易懂的語言加以描述,輔以大量具體的實(shí)例說明基本知識(shí)點(diǎn),方便讀者邊看邊練,加強(qiáng)基本知識(shí)點(diǎn)的理解。
(3)指導(dǎo)性強(qiáng)。根據(jù)作者多年的教學(xué)經(jīng)驗(yàn),學(xué)生在課程上機(jī)時(shí)不知道干什么,或者遇到問題時(shí)無法解決。針對(duì)以上問題,我們專門編寫了C++語言上機(jī)預(yù)備知識(shí),可指導(dǎo)讀者在很短的時(shí)間里,在掌握C++知識(shí)的同時(shí)提高上機(jī)操作能力。而且在每章后都配有練習(xí)題及上機(jī)實(shí)驗(yàn)題,以鍛煉學(xué)生的能力,加深對(duì)知識(shí)的理解和掌握。
本書內(nèi)容豐富,深入淺出,注重理論與實(shí)踐的結(jié)合,突出對(duì)學(xué)生知識(shí)運(yùn)用能力的培養(yǎng)。學(xué)生通過本書內(nèi)容的學(xué)習(xí)和上機(jī)實(shí)驗(yàn),可以較好地掌握面向?qū)ο笤O(shè)計(jì)技術(shù)、C++核心內(nèi)容及Visual C++編程的基礎(chǔ)知識(shí)。
本書編委會(huì)成員有西安交通大學(xué)電信學(xué)院鄒建華教授,蘭州理工大學(xué)趙付青、丁政建、朱昌盛、朱紅蕾和張力,河西學(xué)院白春霞等老師。
第1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概述
1.1 面向?qū)ο蠹夹g(shù)的產(chǎn)生
1.2 面向?qū)ο笏枷?br>1.3 面向?qū)ο蟮木幊碳夹g(shù)(OOP)
1.3.1 OOP的概念和術(shù)語
1.3.2 對(duì)象的屬性與相互關(guān)系
1.4 面向?qū)ο蟮能浖_發(fā)過程
1.4.1 有關(guān)的術(shù)語
1.4.2 面向?qū)ο蟮姆治?br>1.4.3 面向?qū)ο蟮脑O(shè)計(jì)
1.4.4 面向?qū)ο蟮膶?shí)現(xiàn)
1.5 面向?qū)ο蟪绦蛟O(shè)計(jì)方法的特點(diǎn)
1.6 面向?qū)ο蟮木幊碳夹g(shù)的優(yōu)點(diǎn)
1.7 小結(jié)
習(xí)題
第2章 C++概述
2.1 從c到c++
2.2 c++程序開發(fā)過程
2.3 c++編程環(huán)境介紹
2.3.1 環(huán)境簡介
2.3.2 C++環(huán)境介紹
2.3.3 C++編輯步驟
2.3.4 MicrosoftVisualc++的幫助
2.3.5 VisualC++開發(fā)環(huán)境概述
2.4 c++程序示例
2.5 c++對(duì)函數(shù)功能的增強(qiáng)
2.5.1 C++用函數(shù)組織程序
2.5.2 c++程序是函數(shù)驅(qū)動(dòng)的
2.6 c++對(duì)數(shù)據(jù)類型的擴(kuò)充
2.6.1 基本數(shù)據(jù)類型
2.6.2 自定義數(shù)據(jù)類型
2.6.3 從結(jié)構(gòu)到類
2.6.4 類與結(jié)構(gòu)的區(qū)別
2.7 c++對(duì)運(yùn)算符的擴(kuò)充
2.7.1 基本運(yùn)算符
2.7.2 運(yùn)算符重載
2.7.3 運(yùn)算符作成員函數(shù)
2.7.4 轉(zhuǎn)換運(yùn)算符
2.7.5 賦值運(yùn)算符
2.8 小結(jié)
習(xí)題
第3章 C++基本程序設(shè)計(jì)
3.1 c++程序結(jié)構(gòu)
3.2 c++的詞法單位
3.2.1 c++的字符集
3.2.2 標(biāo)識(shí)符
3.2.3 關(guān)鍵字
3.2.4 標(biāo)點(diǎn)符號(hào)
3.3 數(shù)據(jù)類型、常量和變量
3.3.1 數(shù)據(jù)類型
3.3.2 常量
3.3.3 變量數(shù)據(jù)類型
3.3.4 構(gòu)造數(shù)據(jù)類型
3.4 數(shù)據(jù)類型轉(zhuǎn)換
3.5 c++存儲(chǔ)類
3.6 運(yùn)算符、優(yōu)先級(jí)和結(jié)合性
3.6.1 算術(shù)運(yùn)算符和算術(shù)表達(dá)式
3.6.2 賦值運(yùn)算符和賦值表達(dá)式
3.6.3 關(guān)系運(yùn)算符和關(guān)系表達(dá)式
3.6.4 邏輯運(yùn)算符和邏輯表達(dá)式
3.6.5 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式
3.6.6 條件運(yùn)算符和條件表達(dá)式
3.6.7 sizeofo運(yùn)算符
3.6.8 位運(yùn)算符
3.7 c++的控制臺(tái)交互技術(shù)
3.7.1 輸出Outputq:cout)
3.7.2 輸入Input(cin)
3.8 控制結(jié)構(gòu)
3.8.1 分支結(jié)構(gòu)程序設(shè)計(jì)
3.8.2 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)
3.8.3 綜合例題
3.9 小結(jié)
習(xí)題
第4章 類與對(duì)象
4.1 從結(jié)構(gòu)體到類
4.2 類的定義與對(duì)象的引用
4.2.1 類的定義
4.2.2 對(duì)象成員的訪問
4.2.3 類與對(duì)象關(guān)系
4.3 構(gòu)造函數(shù)與析構(gòu)函數(shù)
4.3.1 構(gòu)造函數(shù)
4.3.2 析構(gòu)函數(shù)
4.3.3 調(diào)用構(gòu)造函數(shù)和析構(gòu)函數(shù)的時(shí)機(jī)(對(duì)象的生存周期)
4.4 函數(shù)重載
4.5 友元
4.6 對(duì)象指針
4.6.1 運(yùn)算符new與delete
4.6.2 動(dòng)態(tài)地創(chuàng)建類對(duì)象
4.7 派生類與繼承類
4.7.1 派生類及其定義
4.7.2 單繼承的派生類
4.7.3 多繼承的派生類
4.8 虛擬函數(shù)與多態(tài)性
4.8.1 虛擬函數(shù)使用方法
4.8.2 虛擬函數(shù)與重載函數(shù)
4.8.3 虛擬函數(shù)的繼承
4.9 小結(jié)
習(xí)題
第5章 繼承與派生
5.1 繼承與派生的概念
5.1.1 什么是繼承
5.1.2 為什么要引入繼承機(jī)制
5.2 派生類與繼承
5.2.1 派生類的定義
5.2.2 繼承方式和訪問控制
5.3 派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù)
5.3.1 派生類的構(gòu)造函數(shù)
5.3.2 派生類的析構(gòu)函數(shù)
5.4 多繼承
5.4.1 多繼承派生類的定義
5.4.2 多繼承的構(gòu)造函數(shù)和析構(gòu)函數(shù)
5.4.3 同名覆蓋問題.
5.4.4 多繼承的二義性問題
5.4.5 虛基類與虛繼承
5.5 小結(jié)
習(xí)題
第6章 多態(tài)
6.1 多態(tài)性和虛函數(shù)
6.1.1 多態(tài)性
6.1.2 公有派生環(huán)境下的賦值兼容性規(guī)則
6.1.3 虛函數(shù)
6.2 純虛函數(shù)和抽象類
6.2.1 純虛函數(shù)
6.2.2 抽象類
6.3 虛析構(gòu)函數(shù)
6.4 小結(jié)
習(xí)題
第7章 重載、復(fù)制與轉(zhuǎn)換
7.1 重載
7.1.1 函數(shù)重載
7.1.2 運(yùn)算符重載
7.2 復(fù)制
7.3 轉(zhuǎn)換
7.3.1 一般數(shù)據(jù)類型之間的轉(zhuǎn)換
7.3.2 通過構(gòu)造函數(shù)進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換
7.3.3 通過類成員函數(shù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換
7.4 小結(jié)
習(xí)題
第8章 模板
8.1 模板的概念
8.2 函數(shù)模板
8.2.1 函數(shù)模板的定義
8.2.2 函數(shù)模板與模板函數(shù)
8.2.3 重載函數(shù)模板
……
第9章 I/O流及類庫
第10章 C++異常處理
第11章 Visual C++6.0開發(fā)環(huán)境
第12章 Visual C++6.0數(shù)據(jù)庫編程
第13章 Visual C++6.0網(wǎng)絡(luò)編程
第14章 C++的預(yù)處理程序指令
第15章 C++上機(jī)預(yù)備知識(shí)
附錄A 術(shù)語匯編
附錄B C++句法
參考文獻(xiàn)
第1章面向?qū)ο蟪绦蛟O(shè)計(jì)概述
面向?qū)ο蠹夹g(shù)提供了一種新的認(rèn)知和表示世界的思想和方法,它對(duì)計(jì)算機(jī)工業(yè)的影響是深遠(yuǎn)的。計(jì)算機(jī)從業(yè)人士利用它提出了面向?qū)ο蟮姆治鲈O(shè)計(jì)方法、計(jì)算機(jī)程序設(shè)計(jì)語言、面向?qū)ο蟮能浖O(shè)計(jì)方法、面向?qū)ο蟮臄?shù)據(jù)庫等。面向?qū)ο蠹夹g(shù)為軟件工業(yè)實(shí)現(xiàn)工程化提供了強(qiáng)有力的支持,正是面向?qū)ο蠹夹g(shù)造就了架構(gòu)、統(tǒng)一建模語言(UML)、框架、模式、組件、構(gòu)件、中間件等概念。
計(jì)算機(jī)的不斷發(fā)展為計(jì)算機(jī)及網(wǎng)絡(luò)應(yīng)用提供了大量技術(shù)先進(jìn)、功能強(qiáng)大的應(yīng)用軟件系統(tǒng),同時(shí)也給軟件開發(fā)者和用戶帶來了相應(yīng)的問題:
(1)軟件系統(tǒng)規(guī)模龐大,研制周期長,維護(hù)費(fèi)用高;
(2)軟件系統(tǒng)過于復(fù)雜,在一個(gè)系統(tǒng)中集成了各種功能,大多數(shù)功能不能靈活的裝卸、單獨(dú)升級(jí)或重復(fù)利用;
(3)應(yīng)用軟件不易集成,即使各種應(yīng)用程序是用相同的編程語言編寫的,并且運(yùn)行在相同的計(jì)算機(jī)上,特定應(yīng)用程序的數(shù)據(jù)和功能也不能供其他應(yīng)用程序使用。
面向?qū)ο笞鳛橐环N思想及編程語言,為軟件開發(fā)的整個(gè)過程——從分析設(shè)計(jì)到實(shí)現(xiàn),提供了一個(gè)完整解決方案。面向?qū)ο罂胺Q是軟件發(fā)展取得的里程碑式的偉大成就。
面向?qū)ο蟮能浖_發(fā)和相應(yīng)的面向?qū)ο蟮膯栴}求解是當(dāng)今計(jì)算機(jī)技術(shù)發(fā)展的重要成果和趨勢(shì)之一。面向?qū)ο笫且环N思想,面向?qū)ο笏枷霝檐浖O(shè)計(jì)與開發(fā)賦予了哲學(xué)的意義。在哲學(xué)的世界里,小至沙粒微塵,大至日月星辰乃至宇宙,均可視為單獨(dú)的個(gè)體對(duì)象而存在。
面向?qū)ο蟮某绦蛟O(shè)計(jì)和問題求解力求符合人們?nèi)粘W匀坏乃季S習(xí)慣,降低、分解問題的難度和復(fù)雜性,提高整個(gè)求解過程的可控制性、可監(jiān)測(cè)性和可維護(hù)性,從而達(dá)到以較小的代價(jià)和較高的效率獲得較滿意效果的目的。面向?qū)ο蟪绦蛟O(shè)計(jì)以人類習(xí)慣的解決問題的方法進(jìn)行軟件開發(fā),從而使軟件開發(fā)過程和人類求解問題過程一致。
1.1 面向?qū)ο蠹夹g(shù)的產(chǎn)生
1969年NATO會(huì)議之后,“軟件危機(jī)”成為人們關(guān)注的焦點(diǎn)。為迎接軟件危機(jī)的挑戰(zhàn),人們進(jìn)行了不懈努力,這些努力大致上沿著兩個(gè)方向同時(shí)進(jìn)行的。
(1)從管理的角度,希望實(shí)現(xiàn)軟件開發(fā)過程的工程化。這方面最著名的成果就是提出了大家都很熟悉的“瀑布式”生命周期模型。它是在20世紀(jì)60年代末軟件危機(jī)后出現(xiàn)的第一個(gè)生命周期模型。如下所示:
分析-設(shè)計(jì)-編碼-測(cè)試-維護(hù)
后來,又有人針對(duì)該模型的不足,提出了快速原型法、螺旋模型、噴泉模型等對(duì)“瀑布式”生命周期進(jìn)行補(bǔ)充。現(xiàn)在,它們?cè)谲浖_發(fā)的實(shí)踐中被廣泛采用。這方面的努力,還使人們認(rèn)識(shí)到了文檔的標(biāo)準(zhǔn)以及開發(fā)者之間、開發(fā)者與用戶之間的交流方式的重要性。