《C++程式設計》是由閔聯營、何克右主編,2010年清華大學出版社出版的21世紀高等學校規劃教材。該教材可以作為高等院校計算機專業和相關專業程式設計課程的教材和計算機專業面向對象程式設計教材,也可以作為全國計算機等級考試(二級C++)的培訓教材和參考書,還可供各類程式設計培訓班學員和C++語言自學者參考。
全書共分13章,從內容上組織為5個部分。第1部分是C++概述;第2部分介紹C++面向過程的程式設計方法,主要包括C++的基本數據類型、程式控制語句、數組和結構體、函式、指針和引用等內容;第3部分作為一個過渡,用一個具體的實例探討了程式設計從過程抽象到數據抽象的轉變;第4部分講述C++面向對象的程式設計方法,包括類和對象、繼承和派生、多態性和虛函式、流類庫等內容;第5部分探討C++支持泛型編程的模板機制和泛型編程的實際套用標準模板庫STL等內容。
基本介紹
- 書名:C++程式設計
- 作者:閔聯營、何克右
- ISBN:9787302229117
- 類別:21世紀高等學校規劃教材
- 頁數:392頁
- 出版社:清華大學出版社
- 出版時間:2010年9月1日
- 裝幀:平裝
- 開本:16開
- 字數:621千字
- CIP核字號:2010100210
成書過程
修訂過程
出版工作
責任編輯 | 責任校對 | 責任印製 |
---|---|---|
魏江江 | 時翠蘭 | 孟凡玉 |
內容簡介
教材目錄
第1章 C++概述 1 1.1 程式設計語言 1 1.1.1 機器語言 1 1.1.2 彙編語言 2 1.1.3 高級語言 2 1.2 算法及算法的表示方法 4 1.2.1 算法的概念 4 1.2.2 算法的表示方法 5 1.3 C++的發展和特點 8 1.3.1 C++的發展 8 1.3.2 C++的特點 9 1.4 C++程式的基本框架 9 1.4.1 最簡單的C++程式 9 1.4.2 結構化程式設計框架 12 1.4.3 面向對象程式設計框架 13 1.5 C++程式的開發過程 15 1.5.1 C++程式開發的一般過程 15 1.5.2 用Visual C++開發C++應用程式的步驟 16 習題 18 第2章 C++數據類型 20 2.1 基本數據類型 20 2.1.1 數據在計算機中的存儲 20 2.1.2 標識符 21 2.1.3 數據類型修飾符 22 2.2 常量和變數 23 2.2.1 常量 23 2.2.2 變數 25 2.3 運算符和表達式 27 2.3.1 算術運算符和算術表達式 27 2.3.2 賦值運算符和賦值表達式 28 2.3.3 關係運算和邏輯運算 29 2.3.4 條件運算符 31 2.3.5 逗號運算符 31 2.3.6 位運算符 32 2.3.7 sizeof運算符 32 2.3.8 運算符優先權與結合性 33 2.3.9 數據類型轉換 34 2.4 數據的輸入和輸出 35 2.4.1 用cout進行輸出 35 2.4.2 用cin進行輸入 36 習題 37 第3章 程式控制語句 38 3.1 選擇語句 38 3.1.1 if語句 38 3.1.2 switch語句 43 3.2 循環語句 45 3.2.1 while語句 45 3.2.2 do語句 47 3.2.3 for語句 48 3.2.4 循環的嵌套 50 3.2.5 break和continue語句 52 3.2.6 goto語句 53 習題 54 第4章 數組和結構體 55 4.1 數組 55 4.1.1 數組的定義和存儲 55 4.1.2 數組元素的引用 57 4.1.3 數組的初始化 58 4.1.4 數組的套用 61 4.2 結構體 70 4.2.1 結構體概述 70 4.2.2 結構體類型變數的定義和引用 71 4.2.3 結構體數組 74 習題 75 第5章 函式 77 5.1 函式概述 77 5.2 函式的定義和調用 79 5.2.1 函式定義的一般形式 79 5.2.2 函式的調用 80 5.2.3 函式原型 82 5.2.4 函式的參數傳遞 83 5.3 函式的嵌套和遞歸 94 5.3.1 函式的嵌套調用 94 5.3.2 函式的遞歸調用 95 5.4 內聯函式 97 5.5 函式重載 98 5.6 變數的作用域和存儲期 101 5.6.1 程式的記憶體區域 101 5.6.2 局部變數和全局變數 103 5.6.3 變數的存儲期 106 5.6.4 存儲類別小結 110 5.7 預處理命令 112 5.7.1 宏定義命令 112 5.7.2 檔案包含命令 113 5.7.3 條件編譯命令 114 習題 116 第6章 指針和引用 117 6.1 指針 117 6.1.1 地址和指針的概念 117 6.1.2 指針的定義和使用 118 6.1.3 指針與數組 124 6.1.4 指針與函式 133 6.1.5 指針與結構體 136 6.1.6 const修飾符和指針 145 6.2 引用 146 6.2.1 引用的概念 146 6.2.2 引用作函式參數 148 6.2.3 引用返回值 149 6.2.4 用const限定引用 151 習題 151 第7章 從過程抽象到數據抽象 153 7.1 從過程抽象到數據抽象 153 7.1.1 集合的實現與使用 153 7.1.2 將集合的實現與使用分開 156 7.1.3 將集合用鍊表實現 159 7.1.4 將集合的數據表示和操作封裝在一起 161 7.2 面向對象程式設計的基本概念和特徵 165 7.2.1 面向對象程式設計的基本概念 165 7.2.2 面向對象程式設計的三大特徵 167 7.2.3 從面向過程的程式設計到面向對象的程式設計 172 習題 175 | 第8章 類和對象 176 8.1 類的定義 176 8.1.1 類的定義 176 8.1.2 類的數據成員 177 8.1.3 類的成員函式 178 8.1.4 類成員的訪問控制 180 8.2 對象 181 8.2.1 對象的定義和使用 181 8.2.2 對象在記憶體中的存放 183 8.2.3 this指針 185 8.3 構造函式和析構函式 186 8.3.1 構造函式 186 8.3.2 帶默認參數的構造函式 188 8.3.3 重載構造函式 189 8.3.4 複製構造函式 190 8.3.5 析構函式 194 8.3.6 成員對象的構造和析構 195 8.4 對象數組和對象指針 198 8.4.1 對象數組 198 8.4.2 對象指針 200 8.5 靜態成員 203 8.5.1 靜態數據成員 204 8.5.2 靜態成員函式 205 8.6 友元 206 8.6.1 友元函式 207 8.6.2 友元類 209 8.7 常類型 209 8.7.1 常對象 209 8.7.2 用const修飾的類成員 210 習題 212 第9章 繼承與派生 214 9.1 派生類 214 9.1.1 派生類的定義 214 9.1.2 派生類生成過程 215 9.1.3 派生類的構造函式和析構函式 218 9.2 訪問控制 220 9.2.1 公有繼承 221 9.2.2 私有繼承 222 9.2.3 保護繼承 223 9.3 虛基類 225 9.3.1 多繼承中的二義性問題 225 9.3.2 虛基類的概念 229 9.3.3 虛基類的構造函式 230 習題 234 第10章 多態性 236 10.1 多態性概述 236 10.1.1 靜態聯編 236 10.1.2 動態聯編 238 10.2 運算符重載 240 10.2.1 運算符重載的方法和規則 240 10.2.2 運算符重載為成員函式 244 10.2.3 運算符重載為友元函式 247 10.3 虛函式 248 10.3.1 虛函式的定義及使用 248 10.3.2 動態聯編的一種典型實現方案 254 10.3.3 純虛函式和抽象類 256 10.3.4 虛函式的套用示例 260 習題 264 第11章 模板 265 11.1 模板的概念 265 11.2 函式模板和模板函式 266 11.2.1 函式模板的定義和模板函式的生成 266 11.2.2 函式模板的使用 268 11.2.3 函式模板的特化 270 11.2.4 用函式模板實現基本算法 271 11.3 類模板和模板類 273 11.3.1 類模板的定義 273 11.3.2 類模板的使用 275 11.3.3 類模板的派生 278 11.3.4 類模板的特化 282 11.3.5 string類的使用 285 習題 290 第12章 標準模板庫STL 292 12.1 標準模板庫STL概述 292 12.1.1 STL的發展歷史 292 12.1.2 STL的組成 293 12.2 容器類 295 12.2.1 順序容器 296 12.2.2 關聯容器 313 12.3 STL算法 323 12.3.1 for_each 324 12.3.2 count和count_if 325 12.3.3 copy和remove 327 12.3.4 transform 329 12.4 疊代器 331 12.4.1 疊代器的分類 331 12.4.2 疊代器的特性 335 12.4.3 traits技術 337 12.4.4 與疊代器相關的函式 342 12.4.5 指針與疊代器 343 12.5 函式對象 345 12.5.1 函式對象的概念 345 12.5.2 STL中的函式對象 348 12.6 適配器 349 12.6.1 容器適配器 349 12.6.2 疊代器適配器 355 12.6.3 函式適配器 361 習題 371 第13章 C++的I/O流類庫 372 13.1 C++的流及流類庫 372 13.1.1 C++的流 372 13.1.2 流類庫 372 13.2 格式化I/O 375 13.2.1 用ios類的成員函式進行格式控制 375 13.2.2 使用I/O操縱符進行格式控制 378 13.3 重載I/O運算符 380 13.3.1 重載輸出運算符“<<” 380 13.3.2 重載輸入運算符“>>” 382 13.4 檔案流 383 13.4.1 檔案的打開和關閉 383 13.4.2 檔案的讀寫 386 習題 392 |
教學資源
書名 | 書號 | 出版社 | 出版時間 | 作者 |
---|---|---|---|---|
《C++程式設計習題集和實驗指導》 | 9787302231325 | 清華大學出版社 | 2010.08.01 | 閔聯營、何克右 |