C++面向對象程式設計(第2版)

C++面向對象程式設計(第2版)

《C++面向對象程式設計(第2版)》是由譚浩強編著,2014年清華大學出版社出版的普通高等教育“十一五”國家級規劃教材、中國高等院校計算機基礎教育課程體系規劃教材。該教材可作為大學各專業學習C++面向對象程式設計的基礎教材,也適於C++的初學者自學。

全書共8章。對面向對象程式設計的基本理論概念和C++語言的基本內容作了說明,並且把這兩方面有機地結合起來。

基本介紹

  • 書名:C++面向對象程式設計(第2版)
  • 作者:譚浩強
  • ISBN:9787302360292
  • 類別:普通高等教育“十一五”國家級規劃教材
  • 頁數:296頁
  • 出版社:清華大學出版社
  • 出版時間:2014年7月1日
  • 裝幀:平裝
  • 開本:16開
  • 字數:493千字
  • CIP核字號:2014065933
成書過程,修訂情況,出版工作,內容簡介,教材目錄,教學資源,教材特色,作者簡介,

成書過程

修訂情況

該教材由譚浩強教授編寫,譚亦峰和薛淑斌高級工程師參加了寫作思路的研討、收集資料、調試部分程式等工作。全國高等院校計算機基礎教育研究會和浩強工作室的各位專家以及全國各高校老師多年來對作者給予了支持和鼓勵。

出版工作

2014年7月1日,該教材由清華大學出版社出版。
出版社工作人員
責任編輯封面設計責任校對責任印製
張民
常雪影
李建莊
王靜怡

內容簡介

該教材對面向對象程式設計的基本理論概念和C++語言的基本內容作了說明,並且把這兩方面有機地結合起來。全書共8章,第1章介紹面向過程程式設計領域中C++對C的擴充,第2章初步介紹面向對象程式設計的基本知識,在後續各章中介紹怎樣編寫C++程式,在此過程中自然地介紹了面向對象程式設計方法的套用。

教材目錄

第1章C++的初步知識1
1.1從C到C++1
1.2最簡單的C++程式2
1.3C++對C的擴充8
1.3.1C++的輸入輸出8
1.3.2用const定義常變數11
1.3.3函式原型聲明11
1.3.4函式的重載12
1.3.5函式模板14
1.3.6有默認參數的函式16
1.3.7變數的引用17
1.3.8內置函式24
1.3.9作用域運算符25
1.3.10字元串變數26
1.3.11動態分配/撤銷記憶體的運算符new和delete29
1.3.12C++對C功能擴展的小結30
1.4C++程式的編寫和實現31
1.5關於C++上機實踐32
習題33
第2章類和對象的特性36
2.1面向對象程式設計方法概述36
2.1.1什麼是面向對象的程式設計36
2.1.2面向對象程式設計的特點39
2.1.3類和對象的作用40
2.1.4面向對象的軟體開發41
2.2類的聲明和對象的定義43
2.2.1類和對象的關係432.2.2聲明類的類型43
2.2.3定義對象的方法45
2.2.4類和結構體類型的異同47
2.3類的成員函式48
2.3.1成員函式的性質48
2.3.2在類外定義成員函式48
2.3.3內置成員函式(inline成員函式)49
2.3.4成員函式的存儲方式51
2.4對象成員的引用52
2.4.1通過對象名和成員運算符訪問對象中的成員53
2.4.2通過指向對象的指針訪問對象中的成員53
2.4.3通過對象的引用來訪問對象中的成員54
2.5類和對象的簡單套用舉例54
2.6類的封裝性和信息隱蔽61
2.6.1公用接口與私有實現的分離61
2.6.2類聲明和成員函式定義的分離62
2.6.3面向對象程式設計中的幾個名詞65
習題66
第3章怎樣使用類和對象68
3.1利用構造函式對類對象進行初始化68
3.1.1對象的初始化68
3.1.2用構造函式實現數據成員的初始化69
3.1.3帶參數的構造函式71
3.1.4用參數初始化表對數據成員初始化73
3.1.5構造函式的重載74
3.1.6使用默認參數的構造函式76
3.2利用析構函式進行清理工作79
3.3調用構造函式和析構函式的順序81
3.4對象數組83
3.5對象指針85
3.5.1指向對象的指針85
3.5.2指向對象成員的指針85
3.5.3指向當前對象的this指針88
3.6共用數據的保護90
3.6.1常對象90
3.6.2常對象成員91
3.6.3指向對象的常指針93
3.6.4指向常對象的指針變數93
3.6.5對象的常引用96
3.6.6const型數據的小結97
3.7對象的動態建立和釋放98
3.8對象的賦值和複製99
3.8.1對象的賦值99
3.8.2對象的複製101
3.9靜態成員103
3.9.1靜態數據成員104
3.9.2靜態成員函式106
3.10友元109
3.10.1友元函式109
3.10.2友元類113
3.11類模板114
習題118
第4章對運算符進行重載122
4.1為什麼要對運算符重載122
4.2對運算符重載的方法124
4.3重載運算符的規則127
4.4運算符重載函式作為類成員函式和友元函式128
4.5重載雙目運算符132
4.6重載單目運算符137
4.7重載流插入運算符和流提取運算符139
4.7.1重載流插入運算符“<<”140
4.7.2重載流提取運算符“>>”142
4.8有關運算符重載的歸納144
4.9不同類型數據間的轉換145
4.9.1標準類型數據間的轉換145
4.9.2用轉換構造函式進行不同類型數據的轉換145
4.9.3類型轉換函式147
習題153
第5章繼承與派生154
5.1什麼是繼承與派生154
5.2派生類的聲明方式157
5.3派生類的構成157
5.4派生類成員的訪問屬性159
5.4.1公用繼承160
5.4.2私有繼承162
5.4.3保護成員和保護繼承165
5.4.4多級派生時的訪問屬性169
5.5派生類的構造函式和析構函式170
5.5.1簡單的派生類的構造函式171
5.5.2有子對象的派生類的構造函式174
5.5.3多層派生時的構造函式177
5.5.4派生類構造函式的特殊形式179
5.5.5派生類的析構函式180
5.6多重繼承180
5.6.1聲明多重繼承的方法181
5.6.2多重繼承派生類的構造函式181
5.6.3多重繼承引起的二義性問題184
5.6.4虛基類187
5.7基類與派生類的轉換192
5.8繼承與組合195
5.9繼承在軟體開發中的重要意義197
習題198
第6章多態性與虛函式203
6.1什麼是多態性203
6.2一個典型的例子204
6.3利用虛函式實現動態多態性209
6.3.1虛函式的作用209
6.3.2靜態關聯與動態關聯213
6.3.3在什麼情況下應當聲明虛函式215
6.3.4虛析構函式215
6.4純虛函式與抽象類217
6.4.1純虛函式217
6.4.2抽象類217
6.4.3套用實例218
習題225
第7章輸入輸出流226
7.1C++的輸入和輸出226
7.1.1輸入輸出的含義226
7.1.2C++的I/O對C的發展——類型安全和可擴展性226
7.1.3C++的輸入輸出流227
7.2標準輸出流232
7.2.1cout,cerr和clog流232
7.2.2標準類型數據的格式輸出234
7.2.3用流成員函式put輸出字元239
7.3標準輸入流240
7.3.1cin流240
7.3.2用於字元輸入的流成員函式242
7.3.3istream類的其他成員函式245
7.4對數據檔案的操作與檔案流249
7.4.1檔案的概念249
7.4.2檔案流類與檔案流對象250
7.4.3檔案的打開與關閉251
7.4.4對ASCII檔案的操作253
7.4.5對二進制檔案的操作258
7.5字元串流264
習題268
第8章C++工具270
8.1異常處理270
8.1.1異常處理的任務270
8.1.2異常處理的方法271
8.1.3在函式聲明中進行異常情況指定278
8.1.4在異常處理中處理析構函式279
8.2命名空間281
8.2.1為什麼需要命名空間281
8.2.2什麼是命名空間284
8.2.3使用命名空間解決名字衝突286
8.2.4使用命名空間成員的方法288
8.2.5無名的命名空間290
8.2.6標準命名空間std290
8.3使用早期的函式館291
習題292
附錄A常用字元與ASCII代碼對照表294
附錄B運算符和結合性295
參考文獻297
(註:目錄排版順序為從左列至右列

教學資源

  • 配套教材
該教材有兩本配套教材,即《C++面向對象程式設計題解與上機指導(第2版)》和《C++程式設計實踐指導》。
書名書號出版社出版時間作者
《C++面向對象程式設計題解與上機指導(第2版)》
9787302362623
清華大學出版社
2014.07.01
譚浩強
《C++程式設計實踐指導》
9787302110873
清華大學出版社
2005.07.01
譚浩強
  • 課程資源
該教材向教師免費提供講課的電子演示文稿(素材)。

教材特色

該教材著力於使讀者對C++的全貌和作用有基本的認識,用容易理解的方法講清楚有關的基本概念和基本方法,而不去羅列C++語法中各種煩瑣的細節;否則將會使篇幅過大,而且會沖淡重點,主次不分。
在該教材中不是抽象地介紹面向對象程式設計的理論,而是在介紹C++語言的特點和套用過程中,自然地引出面向對象程式設計的有關概念,通過C++的編程過程理解面向對象程式設計方法。在各章中結合例題介紹有關的算法。
該教材的做法是介紹C++的主要特點和功能,引導讀者由簡到繁地學會編寫C++程式。有了C++編程的初步基礎後,再進一步提高。
該教材用簡單的方法和語言敘述複雜的概念。傳統的教學三部曲是:“提出概念——解釋概念——舉例說明”,作者在多年的計算機教學實踐中,採用了新的三部曲:“提出問題——分析和解決問題——歸納分析”。從具體到抽象,從實際到理論。該教材在引入每一個程式時,都按照以下幾個步驟展開:提出問題——編寫程式——運行結果——程式分析。

作者簡介

譚浩強,男,漢族,1934年11月出生,廣東省人。曾擔任清華大學團委副書記、清華大學綿陽分校黨委常委、清華大學分校副校長等職務,同時承擔教學工作。曾獲全國高校教學成果獎國家級獎、國家科技進步獎、多項部委級優秀教材獎,北京市政府授予“有突出貢獻專家”稱號,被國家科委、中國科協表彰為“全國優秀科普工作者”,獲國務院特殊津貼。

相關詞條

熱門詞條

聯絡我們