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