圖書信息
書 名 C++高級語言程式設計(北京市高等教育精品教材立項項目)叢 書 名 21世紀高等學校計算機規劃教材——精品系列
標準書號 ISBN 978-7-115-24632-5
編目分類 TP312
作 者 徐惠民 等編著
譯 者 --
責任編輯 賈楠
開 本 16 開
印 張 17.75
字 數 443 千字
頁 數 276 頁
裝 幀 平裝
版 次 第1版第1次
初版時間 2011年2月
本 印 次 2011年2月
首 印 數 -- 冊
定 價 32.00 元
內容提要
《C++高級語言程式設計》將C++語言作為大學生學習程式設計的入門語言。全書共9章,第1章、第3章、第5章講解程式的結構和組織,第2章、第4章、第6章討論數據類型和數據的組織,第7章、第8章、第9章講述面向對象的程式設計。《C++高級語言程式設計》的編寫目的是為學生打好程式設計的基礎,因此,特別注意在介紹基本概念和基本方法的同時,重視良好編程習慣的培養。另外,專業術語配有英文。
《C++高級語言程式設計》內容全面,重點突出,深入淺出,同時配有大量習題,適合作為大學各專業的程式設計課程入門教材,也可以作為程式設計基礎的培訓教材和自學參考書。
作者簡介
徐惠民,北京郵電大學信息與通信工程學院教授、博士生導師、北京地區普通高等學校非計算機專業計算機基礎教育教學指導評議委員會委員。享受國務院政府特殊津貼。 自1990年開始從事計算機系列課程的建設和教學,是北京郵電大學非計算機專業計算機基礎課程改革的主要推動者之一,負責課程有 C++程式設計、微機原理與接口技術、現代計算機網路、計算機輔助邏輯設計和模擬、嵌入式系統及實驗、面向對象程式設計和C++ 曾編寫教材有 《微機原理與接口技術》、《基於VxWorks的嵌入式系統及實驗》、《大學計算機基礎》、《C++大學基礎教程》、《數字邏輯設計與VHDL描述》、《系統開發規範與文檔編寫》、《計算機套用基礎教程》、《單片微型計算機原理、接口及套用》。目錄
第1章 C++初步 11.1 程式設計語言的發展 1
1.2 面向過程的程式設計 2
1.3 面向對象程式設計 3
1.4 C++的誕生 4
1.5 程式開發過程 5
1.6 最簡單的C++程式 6
1.7 記憶體的抽象表示和使用 8
本章小結 9
習題和思考題 10
第2章 基本數據類型與表達式 11
2.1 C++的詞法記號和標識符 11
2.1.1 字元集 11
2.1.2 關鍵字 11
2.1.3 標識符 12
2.1.4 分隔設定 12
2.1.5 空白 12
2.2 基本數據類型 12
2.3 變數和常量 15
2.3.1 變數 15
2.3.2 常量 17
2.4 運算符和表達式 20
2.4.1 表達式 20
2.4.2 語句和塊 20
2.4.3 運算符 20
2.5 基本輸入/輸出 29
2.5.1 標準輸入流 29
2.5.2 標準輸出流 30
2.5.3 I/O流的格式控制 31
2.5.4 檔案的輸入和輸出 34
2.6 使用string類型處理字元串 36
2.6.1 string對象的定義和初始化 36
2.6.2 string對象的操作 36
本章小結 38
習題和思考題 38
第3章 C++控制語句 42
3.1 算法的基本控制結構 42
3.1.1 程式的3種控制結構 42
3.1.2 算法及其表示 43
3.2 if選擇語句 45
3.2.1 沒有else分支的形式 45
3.2.2 雙分支形式 46
3.2.3 多分支形式 47
3.2.4 if語句的嵌套 48
3.3 switch選擇語句 50
3.4 循環語句 54
3.4.1 while循環語句 55
3.4.2 do-while循環語句 57
3.4.3 for循環語句 58
3.4.4 break語句和continue語句 61
3.5 循環嵌套 62
3.5.1 循環結構嵌套 62
3.5.2 循環結構和選擇結構的相互嵌套 63
3.6 套用舉例 65
本章小結 69
習題和思考題 69
第4章 數組及其他自定義類型 72
4.1 數組 72
4.1.1 數組定義及初始化 72
4.1.2 訪問數組元素 75
4.1.3 字元數組 77
4.1.4 多維數組 79
4.1.5 數組套用舉例 84
4.1.6 數組小結 87
4.2 枚舉類型 87
4.2.1 枚舉類型定義 88
4.2.2 枚舉變數定義及使用 88
4.2.3 套用舉例 89
4.3 結構類型 89
4.3.1 結構類型的定義和初始化 90
4.3.2 結構數組 92
4.4 聯合類型 94
本章小結 96
習題和思考題 97
第5章 函式 100
5.1 函式概述 100
5.1.1 自定義函式概述 100
5.1.2 庫函式概述 101
5.2 函式定義及使用 102
5.2.1 函式的定義 102
5.2.2 函式原型 104
5.2.3 return語句 106
5.2.4 函式調用方式 108
5.3 函式調用的執行機制和參數傳遞方式 109
5.3.1 函式調用的執行機制 110
5.3.2 函式的參數傳遞方式 111
5.4 遞歸函式和遞歸調用 117
5.4.1 嵌套調用 117
5.4.2 遞歸函式和遞歸調用 118
5.5 內聯函式 121
5.6 重載函式 121
5.7 默認參數值的函式 122
5.8 全局變數與局部變數 124
5.8.1 局部變數 124
5.8.2 全局變數 124
5.8.3 作用域 125
5.9 變數的存儲類型和生存期 126
5.9.1 變數的存儲類型 127
5.9.2 生存期 129
5.9.3 多檔案結構 129
5.10 編譯預處理 130
5.11 結構化程式設計舉例 133
本章小結 136
習題和思考題 136
第6章 指針和引用 140
6.1 指針的概念 140
6.1.1 指針和指針變數 140
6.1.2 指針變數的聲明和初始化 141
6.2 指針的運算 142
6.2.1 指針的賦值運算 142
6.2.2 指針的間接引用運算 143
6.2.3 指針的算術運算 143
6.2.4 指針的關係運算和邏輯運算 144
6.2.5 void類型指針 144
6.2.6 指針類型轉換 146
6.3 指針訪問動態記憶體 146
6.3.1 動態記憶體的申請和釋放 147
6.3.2 動態數組空間的申請和釋放 147
6.3.3 記憶體泄漏和指針懸掛 147
6.4 指向結構體的指針 148
6.5 引用概念 149
6.5.1 引用的聲明 149
6.5.2 引用的使用 150
6.6 指針和引用作為函式的參數 150
6.6.1 指針作為函式參數 150
6.6.2 引用作為函式參數 152
6.6.3 常指針和常引用 153
6.6.4 指針的指針作為參數 155
6.7 指針和引用作為函式的返回值 157
6.7.1 指針函式 157
6.7.2 引用作為函式的返回值 158
6.8 指針和字元串 159
6.8.1 字元串處理的兩種方式 159
6.8.2 字元串操作函式 160
6.9 通過指針訪問數組 161
6.9.1 通過指針訪問一維數組 161
6.9.2 指針數組 163
本章小結 164
習題和思考題 165
第7章 類與對象 167
7.1 類和對象的定義 167
7.1.1 基本概念 167
7.1.2 類的聲明 168
7.1.3 類的實現 170
7.1.4 對象的定義和使用 171
7.1.5 類的作用域與可見性 172
7.2 對象的使用 174
7.2.1 對象指針 174
7.2.2 this指針 175
7.2.3 對象數組 176
7.2.4 對象作為普通函式的參數與返回值 177
7.3 構造函式 180
7.4 析構函式 184
7.5 類的靜態成員 186
7.5.1 靜態數據成員 186
7.5.2 靜態成員函式 188
7.6 類成員的保護和使用 188
7.6.1 類的封裝性 188
7.6.2 友元 189
7.6.3 常對象和常成員 192
7.7 運算符重載 194
7.7.1 運算符重載的使用及其限制 194
7.7.2 運算符重載的定義 195
7.8 類的組合 199
7.9 套用舉例 201
7.10 面向對象分析和設計 206
7.10.1 軟體工程 206
7.10.2 面向對象分析 206
7.10.3 面向對象設計 207
7.10.4 面向對象的意義 207
本章小結 208
習題和思考題 209
第8章 繼承與派生 213
8.1 繼承的概念 213
8.2 定義基類和派生類 214
8.2.1 簡單的繼承和派生 214
8.2.2 定義派生類 216
8.2.3 訪問控制和繼承的關係 216
8.2.4 同名覆蓋 218
8.3 構造函式和析構函式 219
8.3.1 基類只有無參構造函式 219
8.3.2 派生類構造函式 219
8.3.3 包含內嵌對象的派生類構造函式 222
8.3.4 析構函式 230
8.4 轉換與繼承 232
8.4.1 派生類到基類的轉換 232
8.4.2 基類到派生類不存在轉換 235
本章小結 235
習題和思考題 235
第9章 多態 239
9.1 多態的概念 239
9.1.1 面向對象程式設計中的多態 239
9.1.2 多態的實現——聯編 240
9.2 重載、覆蓋與靜態聯編 240
9.2.1 重載與靜態聯編 240
9.2.2 覆蓋與靜態聯編 241
9.3 虛函式與運行時多態 247
9.3.1 虛函式 248
9.3.2 虛析構函式 251
9.4 純虛函式與抽象類 254
9.5 模板 255
9.5.1 函式模板 255
9.5.2 函式模板使用中的問題 258
9.5.3 重載函式模板 260
9.5.4 類模板 261
本章小結 264
習題和思考題 265
附錄 常用C++標準類庫 268
附1 I/O流類 268
附1.1 標準輸出流對象 269
附1.2 標準輸入流對象 270
附1.3 檔案輸出流 270
附1.4 檔案輸入流 271
附2 string類 272
附2.1 string對象的初始化 272
附2.2 string對象的基本操作 272
附3 vector類 274
參考文獻 276
案例與實踐輔導
書 名 C++高級語言程式設計案例與實踐輔導(北京市高等教育精品教材立項項目配套教材)叢 書 名 21世紀高等學校計算機規劃教材——精品系列
標準書號 ISBN 978-7-115-27276-8
編目分類 TP312
作 者 徐惠民 主編
譯 者 --
責任編輯 賈楠
開 本 16 開
印 張 17
字 數 450 千字
頁 數 266 頁
裝 幀 平裝
版 次 第1版第1次
初版時間 2012年3月
本 印 次 2012年3月
首 印 數 -- 冊
定 價 34.00 元
內容簡介
本書是《C++高級語言程式設計》的學習輔導書。全書共12章,第1章介紹了在VC2005集成開發環境下編程的步驟和程式調試方法,第2章~第9章與主教材《C++高級語言程式設計》對應,包括了原教材各章的習題答案、補充的程式設計案例和上機實驗題,第10章、第11章涉及課程設計的相關內容(第10章介紹了Windows程式設計的基礎知識,第11章提供了3個課程設計案例和設計題),第12章是全國計算機等級考試C/C++考試真題和詳解。本書的重點是編程案例和課程設計案例。本書編寫的目的是為學生打好程式設計的基礎,提高其編程能力,因此,在編程案例的選擇上特別注意涵蓋C++語言的基本概念,不僅給出各案例的程式代碼,還附有分析、設計、代碼說明、運行結果解釋等。另外,示例代碼體現了對培養良好編程習慣的重視。
本書為讀者學習C++高級語言程式設計、提高編程能力提供了充足的內容,適合作為大學各專業的C++程式設計課程的輔導書和C++課程設計的教材,也可供程式設計愛好者自學使用。
目錄概覽
第1章 VC2005編程環境介紹第2章 基本數據類型和表達式
第3章 C++控制語句
第4章 數組及其他自定義類型
第5章 函式
第6章 指針和引用
第7章 類和對象
第8章 繼承與派生
第9章 多態
第10章 Windows程式設計基礎
第11章 課程設計
第12章 全國計算機等級考試二級測試及分析