《C++面向對象程式設計教程(第3版)》是由陳維興、林小茶編著,2009年清華大學出版社出版的普通高等教育“十一五”國家級規劃教材、北京高等教育精品教材。該教材適合作為高等院校各專業學生學習C++的入門教材,也適合作為初學者自學的教材。
該教材是為具有C語言基礎的讀者編寫的,主要介紹C++面向對象程式設計的基本知識和編程方法,講述了C++面向對象的基本特徵。
基本介紹
- 書名:C++面向對象程式設計教程(第3版)
- 作者:陳維興、林小茶
- 類別:普通高等教育“十一五”國家級規劃教材、北京高等教育精品教材
- 出版社:清華大學出版社
- 出版時間:2009年6月1日
- 頁數:340 頁
- 開本:16 開
- 裝幀:平裝
- ISBN:9787302200079
- 字數:533千字
- CIP核字號:2009061018
成書過程
修訂情況
- 增加了第8章面向對象程式設計方法與實例;
- 更新或增加了一些在實踐教學中效果比較好的例題;
- 對習題部分作了較大的修訂,增加了題型和題量;
- 為了與C++國際標準(IOS/IEC14882)相一致,使用標準C++的頭檔案改寫了所有源程式;系統頭檔案不帶後綴“.h",使用系統庫時使用命名空間std。
出版工作
責任編輯 | 責任校對 | 責任印製 |
---|---|---|
柳萍、曾潔 | 趙麗敏 | 何芊 |
內容簡介
教材目錄
第1章面向對象程式設計概述1 1.1什麼是面向對象程式設計1 1.1.1一種新的程式設計范型1 1.1.2面向對象程式設計的基本概念2 1.1.3面向對象程式設計的基本特徵4 1.2為什麼要使用面向對象程式設計8 1.2.1傳統程式設計方法的局限性8 1.2.2面向對象程式設計方法的主要優點9 1.3面向對象程式設計的語言11 1.3.1面向對象程式設計語言的發展概況11 1.3.2幾種典型的面向對象程式設計語言12 習題13 第2章C++概述14 2.1C++的起源和特點14 2.1.1C++的起源14 2.1.2C++語言的特點15 2.2C++源程式的構成15 2.2.1簡單的C++程式15 2.2.2C++程式的結構特性17 2.2.3C++程式的編輯、編譯、連線和運行18 2.3C++在非面向對象方面的擴充18 2.3.1注釋行19 2.3.2C++的輸入輸出19 2.3.3靈活的局部變數說明21 2.3.4結構、聯合和枚舉名可直接作為類型名22 2.3.5const修飾符22 2.3.6函式原型25 2.3.7內聯函式28 2.3.8帶有默認參數的函式30 2.3.9函式的重載31 2.3.10作用域運算符“∷"33 2.3.11無名聯合34 2.3.12強制類型轉換35 2.3.13運算符new和delete35 2.3.14引用38 習題44 第3章類和對象48 3.1類與對象的基本概念48 3.1.1結構體與類48 3.1.2成員函式的定義53 3.1.3對象的定義及使用56 3.1.4類的作用域和類成員的訪問屬性59 3.2構造函式與析構函式60 3.2.1對象的初始化和構造函式60 3.2.2用成員初始化列表對數據成員初始化65 3.2.3構造函式的重載67 3.2.4帶默認參數的構造函式71 3.2.5析構函式72 3.3對象數組與對象指針75 3.3.1對象數組75 3.3.2對象指針78 3.3.3this指針80 3.4string類83 3.5向函式傳遞對象85 3.5.1使用對象作為函式參數85 3.5.2使用對象指針作為函式參數86 3.5.3使用對象引用作為函式參數87 3.6對象的賦值和複製88 3.6.1對象賦值語句88 3.6.2拷貝構造函式89 3.7靜態成員96 3.7.1靜態數據成員96 3.7.2靜態成員函式101 3.8友元105 3.8.1友元函式105 3.8.2友元類110 3.9類的組合113 3.10常類型117 3.10.1常引用117 3.10.2常對象118 3.10.3常對象成員120 習題122 第4章派生類與繼承136 4.1派生類的概念136 4.1.1為什麼要使用繼承136 4.1.2派生類的聲明138 4.1.3派生類的構成139 | 4.1.4基類成員在派生類中的訪問屬性140 4.1.5派生類對基類成員的訪問規則141 4.2派生類的構造函式和析構函式149 4.2.1派生類構造函式和析構函式的執行順序150 4.2.2派生類構造函式和析構函式的構造規則151 4.3調整基類成員在派生類中的訪問屬性的其他方法158 4.3.1同名成員158 4.3.2訪問聲明160 4.4多重繼承164 4.4.1多重繼承派生類的聲明164 4.4.2多重繼承派生類的構造函式與析構函式166 4.4.3虛基類170 4.5基類與派生類對象之間的賦值兼容關係179 4.6套用舉例182 習題188 第5章多態性198 5.1編譯時的多態性與運行時的多態性198 5.2運算符重載199 5.2.1在類外定義的運算符重載函式199 5.2.2友元運算符重載函式203 5.2.3成員運算符重載函式209 5.2.4成員運算符重載函式與友元運算符重載函式的比較214 5.2.5"++”和“--”的重載216 5.2.6賦值運算符“=”的重載221 5.2.7下標運算符“\”的重載225 5.3類型轉換227 5.3.1系統預定義類型間的轉換227 5.3.2類類型與系統預定義類型間的轉換228 5.4虛函式235 5.4.1虛函式的引入235 5.4.2虛函式的定義239 5.4.3純虛函式和抽象類249 5.5套用舉例250 習題255 第6章模板與異常處理260 6.1模板的概念260 6.2函式模板與模板函式260 6.3類模板與模板類266 6.4異常處理273 6.4.1異常處理概述273 6.4.2異常處理的方法274 6.5套用舉例278 習題282 第7章C++的流類庫與輸入輸出286 7.1C++為何建立自己的輸入輸出系統286 7.2C++流的概述287 7.2.1C++的輸入輸出流287 7.2.2預定義的流對象289 7.2.3輸入輸出流的成員函式289 7.3預定義類型的輸入輸出292 7.3.1插入運算符與提取運算符292 7.3.2輸入輸出的格式控制294 7.4用戶自定義類型的輸入輸出302 7.4.1重載插入運算符302 7.4.2重載提取運算符304 7.5檔案的輸入輸出305 7.5.1檔案的打開與關閉306 7.5.2檔案的讀寫309 7.6命名空間和頭檔案命名規則317 7.6.1命名空間317 7.6.2頭檔案命名規則319 7.7套用舉例320 習題323 第8章面向對象程式設計方法與實例326 8.1面向對象程式設計的一般方法和技巧326 8.1.1問題分析和功能定義327 8.1.2對象(類)設計及實現327 8.1.3核心控制設計329 8.1.4編碼與測試329 8.1.5進化329 8.2設計實例:模擬網上購書的結賬功能330 8.2.1問題分析與功能定義330 8.2.2對象(類)設計330 8.2.3核心控制設計333 8.2.4編碼與測試333 習題339 參考文獻340 |
教學資源
書名 | 書號 | 出版社 | 作者 |
---|---|---|---|
《C++面向對象程式設計教程(第3版)習題解答與上機指導》 | 9787302200109 | 清華大學出版社 | 陳維興、陳昕、林小茶 |