出版時(shí)間:2010-5 出版社:中國(guó)電力出版社 作者:張基溫 頁(yè)數(shù):363
內(nèi)容概要
本書(shū)編寫(xiě)的目的是改變目前程序設(shè)計(jì)教學(xué)中普遍存在的三個(gè)突出問(wèn)題:學(xué)習(xí)了程序設(shè)計(jì)課程,但碰到問(wèn)題還是不知道如何下手;雖能編寫(xiě)程序,但用C++語(yǔ)言編寫(xiě)出來(lái)的程序卻是面向過(guò)程的;編寫(xiě)出了程序卻不知道如何測(cè)試。本書(shū)是作者在多年的教學(xué)實(shí)踐中,為改變這些現(xiàn)象,摸索出的一套建立在全新概念上的C++程序設(shè)計(jì)教學(xué)體系。全書(shū)分為8章:第1章用5個(gè)實(shí)例,幫助學(xué)習(xí)者快速進(jìn)入面向?qū)ο笫澜纾⒚嫦驅(qū)ο蟮母拍钶喞?,并掌握不同程序的基本測(cè)試方法:第2章通過(guò)5大類11個(gè)典型問(wèn)題,幫助讀者躍過(guò)從問(wèn)題到程序的坎,并從控制結(jié)構(gòu)的角度把第l章的內(nèi)容深化;第3章、第4章分別從數(shù)據(jù)類型和過(guò)程管理兩個(gè)方面進(jìn)行程序設(shè)計(jì)知識(shí)和能力的提高;第5章從程序安全的角度,介紹存儲(chǔ)屬性、名字空間、訪問(wèn)控制、const保護(hù)和異常處理等內(nèi)容;第6章介紹C++中非常具有特色,但又應(yīng)該限制使用的指針技術(shù);第7章、第8章介紹面向?qū)ο蟮膬蓚€(gè)重要機(jī)制:運(yùn)行時(shí)的多態(tài)性和模板。 本書(shū)概念清晰、例題經(jīng)典、便于理解,并以大節(jié)為單位組織練習(xí),習(xí)題豐富、覆蓋率高;美國(guó)紐約市立大學(xué)布魯克林學(xué)院David M.Arnow教授按照本書(shū)結(jié)構(gòu)開(kāi)發(fā)了針對(duì)性的學(xué)習(xí)平臺(tái),為讀者建立了一個(gè)全新概念的立體學(xué)習(xí)環(huán)境,更適合各種層次的程序設(shè)計(jì)教學(xué)、培訓(xùn)和自學(xué)。
作者簡(jiǎn)介
張基溫,教授,國(guó)內(nèi)知名學(xué)者,著名計(jì)算機(jī)教育家;研究和教學(xué)領(lǐng)域涉及計(jì)算機(jī)科學(xué)與技術(shù)、信息管理、信息經(jīng)濟(jì)學(xué)、電子政務(wù)與電子商務(wù)、服務(wù)科學(xué),發(fā)表論文一百余篇,已出版著作79本;目前在國(guó)內(nèi)多所高等學(xué)校擔(dān)任客座或兼職教授,擔(dān)任信息管理與信息系統(tǒng)專業(yè)、計(jì)算機(jī)專業(yè)、
書(shū)籍目錄
前言第1章 進(jìn)入對(duì)象世界 1.1 對(duì)象世界及其建模 1.1.1 對(duì)象組成的世界 1.1.2 程序=模型+表現(xiàn) 1.1.3 UML建模 習(xí)題1.1 1.2 引例1:學(xué)生類 1.2.1 類Student的定義 1.2.2 類Student的實(shí)現(xiàn) 1.2.3 對(duì)象的生成與類的測(cè)試 1.2.4 用構(gòu)造函數(shù)初始化對(duì)象 1.2.5 語(yǔ)法小結(jié) 習(xí)題1.2 1.3 引例2:計(jì)算器 1.3.1 問(wèn)題與建模 1.3.2 類的C++描述 1.3.3 類的測(cè)試與主函數(shù)設(shè)計(jì) 1.3.4 程序改進(jìn)之一:為計(jì)算器增加除運(yùn)算 1.3.5 程序改進(jìn)之二:具有靈活性的計(jì)算器類 1.3.6 語(yǔ)法小結(jié) 習(xí)題1.3 1.4 引例3:累加器 1.4.1 問(wèn)題與建模 1.4.2 類的C++描述 1.4.3 循環(huán)結(jié)構(gòu)的測(cè)試與主函數(shù)設(shè)計(jì) 1.4.4 do-while循環(huán)和for循環(huán) 1.4.5 語(yǔ)法小結(jié) 習(xí)題1.4 1.5 引例4:圓和圓環(huán) 1.5.1 問(wèn)題與建模 1.5.2 具有聚合關(guān)系的類Circle與類Ring 習(xí)題1.5 1.6 引例5:簡(jiǎn)單的公司人員體系 1.6.1 問(wèn)題描述與建模 1.6.2 派生關(guān)系的C++描述 1.6.3 語(yǔ)法小結(jié) 習(xí)題1.6第2章 算法基礎(chǔ) 2.1 選擇 2.1.1 三中取大 2.1.2 報(bào)站器 習(xí)題2.1 2.2 窮舉 2.2.1 找出1000之內(nèi)能被13整除的數(shù) 2.2.2 找素?cái)?shù) 習(xí)題2.2 2.3 遞推 2.3.1 階乘計(jì)算器 2.3.2 用二分法求一元方程的根 習(xí)題2.3 2.4:遞歸 2.4.1 階乘的遞歸求解 2.4.2 漢諾塔問(wèn)題 習(xí)題2.4 2.5 仿真 2.5.1 隨機(jī)問(wèn)題模擬:小學(xué)生算術(shù)測(cè)試器 2.5.2 事件步長(zhǎng)法模擬:原子能反應(yīng)堆的壁厚設(shè)計(jì) 2.5.3 時(shí)間步長(zhǎng)法模擬:鹽水池問(wèn)題 習(xí)題2.5第3章 數(shù)據(jù)類型與I/O流 3.1 變量和常量 3.1.1 變量 3.1.2 常量 習(xí)題3.1 3.2 基本數(shù)據(jù)類型 3.2.1 數(shù)據(jù)存儲(chǔ)格式:定點(diǎn)格式與浮點(diǎn)格式 3.2.2 整數(shù)類型 3.2.3 字符類型 3.2.4 實(shí)型類型 3.2.5 數(shù)據(jù)類型轉(zhuǎn)換 3.2.6 類型重命名運(yùn)算符typedef 3.2.7 存儲(chǔ)空間計(jì)算符sizeof 習(xí)題3.2 3.3 類與結(jié)構(gòu)體——組織不同類型的組合數(shù)據(jù)類型 3.3.1 結(jié)構(gòu)體類型和結(jié)構(gòu)體變量 3.3.2 結(jié)構(gòu)體變量初始化 3.3.3 轉(zhuǎn)換構(gòu)造函數(shù) 習(xí)題3.3 3.4 數(shù)組——按順序組織同類型數(shù)據(jù) 3.4.1 數(shù)組基石出 3.4.2 對(duì)象數(shù)組 3.4.3 數(shù)組作為類的數(shù)據(jù)成員 3.4.4 數(shù)組元素的搜索與排序 3.4.5 數(shù)組應(yīng)用:堆棧 3.4.6 二維數(shù)組 習(xí)題3.4 3.5 字符串 3.5.1 C字符串 3.5.2 標(biāo)準(zhǔn)C++的string類 習(xí)題3.5 3.6 流類 3.6.1 流類與流類庫(kù) 3.6.2 標(biāo)準(zhǔn)流對(duì)象與標(biāo)準(zhǔn)I/O流操作 3.6.3 流的格式化 3.6.4 文件I/O流 3.6.5 流的錯(cuò)誤狀態(tài)及其處理 習(xí)題3.6第4章 C++過(guò)程組織與管理 4.1 函數(shù)參數(shù)傳遞與函數(shù)返回 4.1.1 函數(shù)調(diào)用時(shí)的值傳遞與引用傳遞 4.1.2 關(guān)于函數(shù)參數(shù)的計(jì)算順序 4.1.3 函數(shù)返回的問(wèn)題 習(xí)題4.1 4.2 函數(shù)名重載 4.2.1 函數(shù)名重載的基本規(guī)則 4.2.2 構(gòu)造函數(shù)重載 4.2.3 在派生類中重定義基類成員函數(shù) 習(xí)題4.2 4.3 操作符重載 4.3.1 操作符重載及其規(guī)則 4.3.2 成員函數(shù)形式的操作符重載 4.3.3 友元函數(shù)形式的操作符重載 4.3.4 賦值操作符重載 習(xí)題4.3 4.4 程序編譯組織 4.4.1 程序文件與項(xiàng)目 4.4.2 頭文件 4.4.3 條件編譯 習(xí)題4.4第5章 C++程序安全機(jī)制 5.1 變量的訪問(wèn)屬性——基于作用域的安全機(jī)制 5.1.1 變量名的作用域、可見(jiàn)性和生命期 5.1.2 C++的存儲(chǔ)屬性 5.1.3 C++內(nèi)存管理 習(xí)題5.1 5.2 名字空間——基于名字的安全機(jī)制 5.2.1 名字空間及其定義 5.2.2 名字空間成員的使用 5.2.3 無(wú)名名字空間和全局名字空間 習(xí)題5.2 5.3 對(duì)象成員的訪問(wèn)控制——基于封裝保護(hù)的安全機(jī)制 5.3.1 類層次結(jié)構(gòu)中的三種訪問(wèn)控制屬性 5.3.2 類作用域 5.3.3 友元關(guān)系 5.3.4 類的靜態(tài)成員 5.3.5 多基派生與虛擬派生 習(xí)題5.3 5.4 const保護(hù) 5.4.1 用const定義常量 5.4.2 const修飾函數(shù) 5.4.3 const成員與const對(duì)象 習(xí)題5.4 5.5 異常處理 5.5.1 程序錯(cuò)誤與程序異常 5.5.2 C++異常處理 5.5.3 函數(shù)異常規(guī)格說(shuō)明 5.5.4 常用異常處理技術(shù) 5.5.5 標(biāo)準(zhǔn)異常 習(xí)題5.5第6章 指針技術(shù) 6.1 指針的概念 6.1.1 指針=基類型+地址 6.1.2 指針的操作 6.1.3 多級(jí)指針 6.1.4 懸空指針、空指針與void指針 6.1.5 用const修飾指針及其引用 習(xí)題6.1 6.2 數(shù)組的指針形式 6.2.1 數(shù)組名與指向數(shù)組的指針 6.2.2 二維數(shù)組的指針形式 6.2.3 指針與C-字符串 習(xí)題6.2 6.3 函數(shù)與指針 6.3.1 向函數(shù)傳遞地址 6.3.2 main()函數(shù)的參數(shù) 6.3.3 返回指針的函數(shù) 6.3.4 函數(shù)名指針與指向函數(shù)的指針 習(xí)題6.3 6.4 指向?qū)ο蟮闹羔? 6.4.1 指向?qū)ο笾羔樀囊饬x 6.4.2 指向?qū)ο笾羔樀氖褂? 6.4.3 this指針 習(xí)題6.4 6.5 動(dòng)態(tài)內(nèi)存分配 6.5.1 動(dòng)態(tài)存儲(chǔ)分配和靜態(tài)存儲(chǔ)分配 6.5.2 單個(gè)數(shù)據(jù)的動(dòng)態(tài)存儲(chǔ)分配 6.5.3 對(duì)象的淺復(fù)制與深復(fù)制 6.5.4 數(shù)組的動(dòng)態(tài)存儲(chǔ)分配 6.5.5 對(duì)象和數(shù)據(jù)成員的動(dòng)態(tài)存儲(chǔ)分配 6.5.6 動(dòng)態(tài)存儲(chǔ)分配中的異常處理 習(xí)題6.5 6.6 鏈表 6.6.1 鏈表的概念 6.6.2 單鏈表的類結(jié)構(gòu) 6.6.3 單鏈表的操作與成員函數(shù)設(shè)計(jì) 6.6.4 鏈表的測(cè)試 習(xí)題6.6第7章 程序運(yùn)行時(shí)的多態(tài)性 7.1 虛函數(shù)與動(dòng)態(tài)綁定 7.1.1 動(dòng)態(tài)綁定與虛函數(shù) 7.1.2 基于基類指針的動(dòng)態(tài)綁定 7.1.3 虛函數(shù)表 7.1.4 虛函數(shù)的限制與虛析構(gòu)函數(shù) 7.1.5 純虛函數(shù)與抽象類 習(xí)題7.1 7.2 運(yùn)行時(shí)類型鑒別 7.2.1 dynamiccast操作符 7.2.2 用typeid獲得對(duì)象類型信息 習(xí)題7.2第8章 模板 8.1 算法抽象模板——函數(shù)模板 8.1.1 從函數(shù)重載到函數(shù)模板 8.1.2 模板函數(shù)重載 8.1.3 函數(shù)模板的具體化 習(xí)題8.1 8.2 數(shù)據(jù)抽象模板——類模板 8.2.1 類模板的定義 8.2.2 類模板的實(shí)例化 8.2.3 類模板的使用 8.2.4 類模板實(shí)例化時(shí)的異常處理 習(xí)題8.2 8.3 標(biāo)準(zhǔn)模板庫(kù) 8.3.1 容器 8.3.2 算法與函數(shù)對(duì)象 8.3.3 迭代器 8.3.4 STL標(biāo)準(zhǔn)頭文件 習(xí)題8.3附錄A C++操作符的優(yōu)先級(jí)別和結(jié)合方向附錄B 重要概念和資料索引參考文獻(xiàn)
圖書(shū)封面
評(píng)論、評(píng)分、閱讀與下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版