面向?qū)ο蟪绦蛟O(shè)計(jì)(C++語(yǔ)言)(第二版)/21世紀(jì)高等學(xué)校規(guī)劃教材·計(jì)算機(jī)科學(xué)與技術(shù)
定 價(jià):59 元
叢書(shū)名:21世紀(jì)高等學(xué)校規(guī)劃教材計(jì)算機(jī)科學(xué)與技術(shù)
當(dāng)前圖書(shū)已被 4 所學(xué)校薦購(gòu)過(guò)!
查看明細(xì)
- 作者:程磊,李?lèi)?ài)華 著
- 出版時(shí)間:2018/11/1
- ISBN:9787302507475
- 出 版 社:清華大學(xué)出版社
- 中圖法分類(lèi):TP312C++
- 頁(yè)碼:358
- 紙張:膠版紙
- 版次:2
- 開(kāi)本:16開(kāi)
本書(shū)是《面向?qū)ο蟪绦蛟O(shè)計(jì)(C++語(yǔ)言)》的第2版,參考了C++11標(biāo)準(zhǔn)的新特性,更新或增加了部分例題與習(xí)題,對(duì)部分章節(jié)的內(nèi)容做了修改調(diào)整,特別增加了Visual C++環(huán)境下Windows程序開(kāi)發(fā)的實(shí)例,給出了C++11的部分新特性,以便讀者了解和深入學(xué)習(xí)。
本書(shū)基于C++語(yǔ)言詳細(xì)地介紹了面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,內(nèi)容主要分三大部分共13章。
第一部分是C++語(yǔ)言基礎(chǔ)。重點(diǎn)介紹C++語(yǔ)言的語(yǔ)法、面向?qū)ο蟮幕咎卣鳌++程序的開(kāi)發(fā)過(guò)程、基本數(shù)據(jù)類(lèi)型、函數(shù)、引用、動(dòng)態(tài)內(nèi)存管理及異常處理等。
第二部分是面向?qū)ο蟮某绦蛟O(shè)計(jì)。詳細(xì)講述面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念、類(lèi)與對(duì)象的定義和使用、繼承與派生、多態(tài)性、運(yùn)算符重載、模板、標(biāo)準(zhǔn)模板庫(kù)STL、C++的輸入與輸出等。
第三部分是Visual C++環(huán)境下Windows程序開(kāi)發(fā)概述;赩isual C++2015開(kāi)發(fā)環(huán)境、面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,講解Windows編程初步和應(yīng)用實(shí)例的設(shè)計(jì)開(kāi)發(fā)。
本書(shū)結(jié)構(gòu)清晰,內(nèi)容講述深入淺出,實(shí)例講解精練。同時(shí),每章后面都附有大量的習(xí)題。教師可以從清華大學(xué)出版社網(wǎng)站www.tup.com.cn下載本書(shū)的電子課件和所有例題代碼。
本書(shū)既可作為高等學(xué)校相關(guān)專(zhuān)業(yè)面向?qū)ο蟪绦蛟O(shè)計(jì)C++語(yǔ)言的教材,也可作為軟件開(kāi)發(fā)技術(shù)人員的參考書(shū)。
第2版前言
本書(shū)是《面向?qū)ο蟪绦蛟O(shè)計(jì)(C++語(yǔ)言)》的第2版,為保持一定的教學(xué)連續(xù)性,本書(shū)繼續(xù)保留原教材的主要框架及特點(diǎn),對(duì)部分章節(jié)內(nèi)容進(jìn)行了更新或修改。
1。第2版的變化
通過(guò)幾年來(lái)的教學(xué)實(shí)踐積累,根據(jù)作者的授課經(jīng)驗(yàn),以及教材使用院校的反饋,在第1版的基礎(chǔ)上,本書(shū)做了以下幾個(gè)方面的修改。
(1)對(duì)章節(jié)內(nèi)容的修改及完善。
在不改變整體知識(shí)架構(gòu)的基礎(chǔ)上,對(duì)部分章節(jié)的內(nèi)容做了調(diào)整,對(duì)章節(jié)內(nèi)容進(jìn)行深入講解分析,更新或增加了每章的例題與習(xí)題。
。2)增加了程序運(yùn)行結(jié)果的截圖。
對(duì)于每章的例題,修改了例題運(yùn)行結(jié)果的表示形式,給出例題的實(shí)際運(yùn)行結(jié)果截圖,以這種方式呈現(xiàn)程序的運(yùn)行結(jié)果,強(qiáng)化了運(yùn)行結(jié)果的直觀(guān)性,便于讀者閱讀分析。
。3)特別修改了本書(shū)第三部分的內(nèi)容。
特別修改了VisualC++環(huán)境下Windows程序開(kāi)發(fā)的內(nèi)容,基于本書(shū)第一部分和第二部分的學(xué)習(xí)內(nèi)容,增加了“小球游戲程序”開(kāi)發(fā)的實(shí)例,綜合運(yùn)用面向?qū)ο蟪绦蛟O(shè)計(jì)知識(shí),設(shè)計(jì)開(kāi)發(fā)Windows應(yīng)用程序,使學(xué)生在面向?qū)ο蟪绦蛟O(shè)計(jì)上再上一個(gè)臺(tái)階。
。4)更新了Windows平臺(tái)的程序開(kāi)發(fā)環(huán)境。
本書(shū)基于目前較主流的VisualC++2015集成開(kāi)發(fā)環(huán)境,所有程序均基于VisualC++2015集成開(kāi)發(fā)環(huán)境編譯運(yùn)行。并給出開(kāi)發(fā)步驟的截圖說(shuō)明,讀者可以跟著設(shè)計(jì)過(guò)程說(shuō)明,學(xué)習(xí)應(yīng)用程序的開(kāi)發(fā)。
(5)增加C++11標(biāo)準(zhǔn)的新特性。
參考了C++標(biāo)準(zhǔn),為了保持教學(xué)的連貫性,本書(shū)并沒(méi)有全部改到C++11標(biāo)準(zhǔn)上,僅給出了C++11的部分新特性,以便讀者了解和深入學(xué)習(xí)。
2。本書(shū)的主要內(nèi)容
本書(shū)內(nèi)容主要分三大部分,首先介紹C++語(yǔ)言的基礎(chǔ),然后重點(diǎn)介紹面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,最后講解基于Windows環(huán)境的VC++程序開(kāi)發(fā),有理論、有實(shí)踐,三大部分內(nèi)容循序漸進(jìn),逐步提高,這也是本書(shū)區(qū)別于同類(lèi)書(shū)的一大亮點(diǎn)。
第一部分是C++語(yǔ)言基礎(chǔ)。重點(diǎn)介紹C++語(yǔ)言的語(yǔ)法、面向?qū)ο蟮幕咎卣、C++程序的開(kāi)發(fā)過(guò)程、基本數(shù)據(jù)類(lèi)型、函數(shù)、引用、動(dòng)態(tài)內(nèi)存管理及異常處理等。
第二部分是面向?qū)ο蟮某绦蛟O(shè)計(jì)。詳細(xì)講述面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念、類(lèi)與對(duì)象的定義和使用、繼承與派生、多態(tài)性、運(yùn)算符重載、模板、標(biāo)準(zhǔn)模板庫(kù)STL、C++的輸入與輸出等。
第三部分是VisualC++環(huán)境下Windows程序開(kāi)發(fā)概述。包括Windows編程初步和綜合設(shè)計(jì)實(shí)例。
每章開(kāi)始以精練的語(yǔ)言扼要說(shuō)明本章的內(nèi)容要點(diǎn),本章難點(diǎn)被適當(dāng)?shù)胤纸庠诟鞴?jié)中。
本書(shū)作者長(zhǎng)期以來(lái)從事面向?qū)ο蟪绦蛟O(shè)計(jì)的教學(xué),具有豐富的教學(xué)、實(shí)踐經(jīng)驗(yàn)和獨(dú)到的見(jiàn)解,這些經(jīng)驗(yàn)和見(jiàn)解都已融入本書(shū)的內(nèi)容中。書(shū)中的程序都已在VisualC++2015集成開(kāi)發(fā)環(huán)境下編譯通過(guò)。
3。本書(shū)的特色
本書(shū)的特色體現(xiàn)在以下4個(gè)方面。
。1)內(nèi)容精練、講解深入。參考C++標(biāo)準(zhǔn)的新特性,對(duì)龐雜的知識(shí)做認(rèn)真的取舍,結(jié)合作者的教學(xué)經(jīng)驗(yàn)講解,透徹展示重要內(nèi)容。
。2)知識(shí)介紹深入淺出、簡(jiǎn)明易懂。對(duì)C++語(yǔ)言的基本概念、原理和方法的簡(jiǎn)述由淺入深,條理分明,循序漸進(jìn)。以“概念→語(yǔ)法→舉例”的形式進(jìn)行講解,強(qiáng)調(diào)指出學(xué)生常犯的錯(cuò)誤和容易混淆的概念。
。3)特別強(qiáng)調(diào)實(shí)踐環(huán)節(jié)對(duì)于程序設(shè)計(jì)的重要性。理論與實(shí)踐緊密結(jié)合。不僅說(shuō)明知識(shí)點(diǎn),更重要的是向讀者表明其應(yīng)用方法,注重對(duì)知識(shí)的應(yīng)用領(lǐng)域和質(zhì)量進(jìn)行評(píng)價(jià),激發(fā)讀者對(duì)于程序設(shè)計(jì)的興趣,使讀者在短時(shí)間內(nèi)掌握“用什么”“怎么用”“用在哪”,進(jìn)而學(xué)會(huì)用C++語(yǔ)言進(jìn)行程序設(shè)計(jì)并積累豐富的實(shí)踐經(jīng)驗(yàn)。
。4)講授相關(guān)課程的教師可以從清華大學(xué)出版社網(wǎng)站下載本書(shū)的電子課件和相關(guān)例程代碼。
4。相關(guān)說(shuō)明
學(xué)生提出的問(wèn)題,自己的編程實(shí)踐和對(duì)技術(shù)的思索,特色教學(xué)的需要都是促使我們編寫(xiě)本書(shū)的源動(dòng)力。本書(shū)第1~4章由李?lèi)?ài)華編寫(xiě),第5~8章由程磊編寫(xiě),第9~13章由劉海艷編寫(xiě)。另外,沈紅、鄭浩哲、臧晶和高珊也參與了部分章節(jié)的編寫(xiě)及程序調(diào)試工作。
本書(shū)可以用作48~64學(xué)時(shí)教學(xué)的教材,我們努力從程序員的角度來(lái)介紹標(biāo)準(zhǔn)C++語(yǔ)言的基本技術(shù)和精華內(nèi)容,但限于篇幅,有些內(nèi)容無(wú)法詳述,如需更深、更詳細(xì)的研究時(shí)可參考本書(shū)在最后給出的參考文獻(xiàn)書(shū)目。
本書(shū)第1版已被很多院校選做“面向?qū)ο蟪绦蛟O(shè)計(jì)”課程的教材,他們?cè)谑褂眠^(guò)程中給出了非常中肯的建議,在此深表感謝。
本書(shū)是作者多年教學(xué)實(shí)踐的產(chǎn)物,我們希望它能夠引導(dǎo)讀者步入面向?qū)ο蟪绦蛟O(shè)計(jì)的輝煌殿堂,也特別希望讀者能夠不吝指出書(shū)中的缺點(diǎn)和錯(cuò)誤,與我們交流,以便將其修改得更加完善。
2018年5月
第一部分C++語(yǔ)言基礎(chǔ)
第1章面向?qū)ο蟪绦蛟O(shè)計(jì)概述
1.1面向過(guò)程與面向?qū)ο?
1.1.1面向過(guò)程的程序設(shè)計(jì)
1.1.2面向?qū)ο蟮某绦蛟O(shè)計(jì)
1.2面向?qū)ο蟪绦蛟O(shè)計(jì)的基本特征
1.2.1新的程序設(shè)計(jì)范型
1.2.2面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念
1.2.3面向?qū)ο蟪绦蛟O(shè)計(jì)的基本特征
1.3C++語(yǔ)言概述
1.3.1從C到C++
1.3.2C++語(yǔ)言的特點(diǎn)
1.4C++程序及其開(kāi)發(fā)環(huán)境
1.4.1C++程序的開(kāi)發(fā)過(guò)程
1.4.2Microsoft Visual Studio 2015集成開(kāi)發(fā)環(huán)境簡(jiǎn)介
1.4.3Visual C++控制臺(tái)應(yīng)用程序開(kāi)發(fā)
1.5本章小結(jié)
習(xí)題
第2章C++語(yǔ)言基礎(chǔ)
2.1C++語(yǔ)言的基本語(yǔ)法
2.1.1一個(gè)簡(jiǎn)單的C++程序
2.1.2名字空間
2.1.3標(biāo)識(shí)符命名及規(guī)范
2.2基本數(shù)據(jù)類(lèi)型、運(yùn)算符和程序流程控制
2.2.1基本數(shù)據(jù)類(lèi)型
2.2.2運(yùn)算符和程序流程控制
2.2.3數(shù)據(jù)類(lèi)型轉(zhuǎn)換
2.3數(shù)據(jù)的輸入與輸出
2.3.1I/O的書(shū)寫(xiě)格式
2.3.2簡(jiǎn)單的I/O格式控制
2.4C++中函數(shù)的新特性
2.4.1函數(shù)的原型
2.4.2默認(rèn)參數(shù)的函數(shù)
2.4.3內(nèi)聯(lián)函數(shù)
2.4.4函數(shù)重載
2.5引用
2.5.1引用的概念及使用
2.5.2引用作為參數(shù)傳遞
2.5.3引用與指針的區(qū)別
2.5.4引用作為返回類(lèi)型
2.6動(dòng)態(tài)內(nèi)存分配
2.6.1動(dòng)態(tài)內(nèi)存分配與釋放函數(shù)
2.6.2new和delete
2.7異常處理
2.7.1異常處理的機(jī)制
2.7.2異常處理的實(shí)現(xiàn)
2.8本章小結(jié)
習(xí)題
第二部分面向?qū)ο蟮某绦蛟O(shè)計(jì)
第3章類(lèi)和對(duì)象(一)
3.1類(lèi)的構(gòu)成
3.1.1從結(jié)構(gòu)到類(lèi)
3.1.2類(lèi)的構(gòu)成
3.1.3類(lèi)成員的訪(fǎng)問(wèn)屬性
3.2類(lèi)的成員函數(shù)
3.3對(duì)象的定義與使用
3.3.1類(lèi)與對(duì)象的關(guān)系
3.3.2對(duì)象的定義
3.3.3對(duì)象中成員的訪(fǎng)問(wèn)
3.3.4對(duì)象賦值語(yǔ)句
3.4構(gòu)造函數(shù)與析構(gòu)函數(shù)
3.4.1構(gòu)造函數(shù)
3.4.2成員初始化表
3.4.3具有默認(rèn)參數(shù)的構(gòu)造函數(shù)
3.4.4析構(gòu)函數(shù)
3.4.5默認(rèn)的構(gòu)造函數(shù)和析構(gòu)函數(shù)
3.4.6重載構(gòu)造函數(shù)
3.4.7拷貝構(gòu)造函數(shù)
3.4.8淺拷貝和深拷貝
3.4.9C++11新的類(lèi)功能
3.5UML
3.5.1UML概述
3.5.2類(lèi)圖
3.6本章小結(jié)
習(xí)題
第4章類(lèi)和對(duì)象(二)
4.1自引用指針this
4.2對(duì)象數(shù)組與對(duì)象指針
4.2.1對(duì)象數(shù)組
4.2.2堆對(duì)象
4.2.3對(duì)象指針
4.3向函數(shù)傳遞對(duì)象
4.3.1使用對(duì)象作為函數(shù)參數(shù)
4.3.2使用對(duì)象指針作為函數(shù)參數(shù)
4.3.3使用對(duì)象引用作為函數(shù)參數(shù)
4.4靜態(tài)成員
4.4.1靜態(tài)數(shù)據(jù)成員
4.4.2靜態(tài)成員函數(shù)
4.5友元
4.5.1友元函數(shù)
4.5.2友元類(lèi)
4.6對(duì)象成員
4.7常對(duì)象
4.8本章小結(jié)
習(xí)題
第5章繼承與派生
5.1繼承與派生的概念
5.2派生類(lèi)的聲明
5.3派生類(lèi)的訪(fǎng)問(wèn)屬性
5.4派生類(lèi)的構(gòu)造函數(shù)和析構(gòu)函數(shù)
5.4.1派生類(lèi)構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行順序
5.4.2派生類(lèi)構(gòu)造函數(shù)和析構(gòu)函數(shù)的構(gòu)造規(guī)則
5.4.3C++11繼承構(gòu)造函數(shù)
5.5多繼承
5.5.1多繼承的聲明
5.5.2多繼承的構(gòu)造函數(shù)與析構(gòu)函數(shù)
5.6基類(lèi)成員訪(fǎng)問(wèn)和賦值兼容性
5.6.1基類(lèi)成員名的限定訪(fǎng)問(wèn)和名字覆蓋
5.6.2名字覆蓋
5.6.3賦值兼容規(guī)則
5.7虛基類(lèi)
5.7.1提出問(wèn)題
5.7.2虛基類(lèi)的概念
5.7.3虛基類(lèi)的初始化
5.8本章小結(jié)
習(xí)題
第6章虛函數(shù)與多態(tài)性
6.1多態(tài)性概述
6.1.1多態(tài)的類(lèi)型
6.1.2基類(lèi)指針指向派生類(lèi)對(duì)象
6.2虛函數(shù)
6.2.1虛函數(shù)的定義格式
6.2.2多繼承與虛函數(shù)
6.2.3虛析構(gòu)函數(shù)
6.3純虛函數(shù)和抽象類(lèi)
6.3.1純虛函數(shù)
6.3.2抽象類(lèi)
6.4綜合應(yīng)用舉例
6.5本章小結(jié)
習(xí)題
第7章運(yùn)算符重載
7.1運(yùn)算符重載的概念
7.2運(yùn)算符重載的規(guī)則
7.3運(yùn)算符重載為友元函數(shù)
7.4運(yùn)算符重載為成員函數(shù)
7.5幾種常用運(yùn)算符的重載
7.6本章小結(jié)
習(xí)題
第8章模板
8.1模板的概念
8.2函數(shù)模板與模板函數(shù)
8.3類(lèi)模板與模板類(lèi)
8.4C++11模板新增特性
8.5本章小結(jié)
習(xí)題
第9章標(biāo)準(zhǔn)模板庫(kù)(STL)
9.1STL概述
9.2容器
9.2.1容器分類(lèi)與共同操作
9.2.2順序容器
9.2.3關(guān)聯(lián)容器
9.3迭代器
9.3.1迭代器的分類(lèi)
9.3.2容器類(lèi)迭代器的基本操作
9.4算法與函數(shù)對(duì)象
9.4.1算法的使用形式
9.4.2常用算法舉例
9.4.3函數(shù)對(duì)象
9.5STL和C++11
9.6本章小結(jié)
習(xí)題
第10章C++的輸入和輸出
10.1C++語(yǔ)言的流類(lèi)庫(kù)及其基本結(jié)構(gòu)
10.2預(yù)定義類(lèi)型的輸入輸出
10.2.1無(wú)格式輸入輸出
10.2.2格式化輸入輸出
10.3用戶(hù)自定義類(lèi)型的輸入輸出
10.4文件的輸入輸出
10.4.1通過(guò)FILE結(jié)構(gòu)進(jìn)行文件操作
10.4.2通過(guò)文件流進(jìn)行文件操作
10.5本章小結(jié)
習(xí)題
第三部分Visual C++環(huán)境下Windows程序開(kāi)發(fā)概述
第11章Windows編程初步
11.1一個(gè)最簡(jiǎn)單的Windows程序
11.2簡(jiǎn)單Windows程序的生成步驟
11.3Windows基本程序框架
11.4Windows程序消息處理過(guò)程
11.5Windows常用數(shù)據(jù)類(lèi)型和句柄
11.6Windows程序?qū)崿F(xiàn)繪圖功能
11.7把類(lèi)與對(duì)象引入到Windows程序中
11.8本章小結(jié)
習(xí)題
第12章MFC庫(kù)和應(yīng)用程序框架
12.1MFC中的常用類(lèi)
12.2MFC的應(yīng)用程序框架
12.3窗口消息映射與處理函數(shù)
12.4對(duì)話(huà)框及常用控件
12.4.1對(duì)話(huà)框的構(gòu)成和分類(lèi)
12.4.2創(chuàng)建對(duì)話(huà)框程序
12.4.3添加對(duì)話(huà)框類(lèi)
12.4.4運(yùn)行對(duì)話(huà)框程序
12.4.5Windows常用控件
12.5文檔和視圖
12.5.1文檔和視圖的關(guān)系
12.5.2文檔和視圖類(lèi)常用的成員函數(shù)
12.6文檔和視圖程序?qū)嵗?
12.7本章小結(jié)
習(xí)題
第13章綜合設(shè)計(jì)實(shí)例——簡(jiǎn)單繪圖程序
13.1功能需求
13.2分析與設(shè)計(jì)
13.2.1圖形元素的類(lèi)邏輯設(shè)計(jì)
13.2.2圖元的存儲(chǔ)管理
13.2.3圖元的繪制操作
13.3程序?qū)崿F(xiàn)
13.3.1建立SDI應(yīng)用程序框架
13.3.2建立菜單和工具條
13.3.3添加圖形元素類(lèi)
13.3.4框架類(lèi)的實(shí)現(xiàn)
13.3.5文檔類(lèi)的實(shí)現(xiàn)
13.3.6視圖類(lèi)的實(shí)現(xiàn)
13.4程序運(yùn)行結(jié)果
13.5本章小結(jié)
習(xí)題
參考文獻(xiàn)