C++程序設計基礎 (第6版)
內容描述
本書共12章,主要內容包括:簡單程序與基本數據類型、程序控制結構、函數、數組、集合與結構、類與對象、運算符重載、繼承、虛函數與多態性、模板、輸入流/輸出流、異常處理。本書的例程以Visual C++ 2015為運行環境。本書提供配套的電子課件和習題解答,讀者登錄華信教育資源網(www.hxedu.com.cn)註冊後可免費下載。電子課件由近3000張PPT幻燈片組成,以圖形化方式充分表現程序設計課程的教學特點。本書可以作為高等學校電腦類、信息類、電類專業本科生高級語言程序設計課程教材,也可以作為教師、學生和C++語言愛好者的參考書。
目錄大綱
1章簡單程序與基本數據類型1
1.1概述1
1.1.1程序設計與程序設計語言1
1.1.2一個簡單的C++程序2
1.1.3程序的編譯執行4
1.2 C++語言的字符集與詞彙5
1.2. 1字符集5
1.2.2詞彙6
1.3 C++語言的基本數據類型與存儲形式7
1.3.1 C++語言的數據類型7
1.3.2數據存儲7
1.3.3基本數據類型8
1.4數據對象與訪問11
1.4. 1變量定義11
1.4.2訪問變量12
1.4.3常量與約束訪問16
1.5數據輸入與數據輸出19
1.5.1鍵盤輸入19
1.5.2屏幕輸出19
習題20
2章程序控制結構21
2.1表達式21
2.1 .1運算符21
2.1.2算術表達式23
2.1.3邏輯表達式25
2.1.4賦值表達式26
2.1.5條件表達式27
2.1.6逗號表達式28
2.1.7表達式語句28
2.2選擇控制29
2.2.1 if語句29
2.2.2 switch語句33
2.3循環控制37
2.3.1 while語句38
2.3.2 do-while語句41
2.3.3 for語句44
2.3.4循環的嵌套48
2.4判斷表達式的使用50
2.5轉向語句52
習題54
3章函數56
3.1函數的定義與調用56
3.1.1函數定義56
3.1.2函數調用57
3.1.3函數原型57
3.2函數參數的傳遞59
3.2.1傳值參數59
3.2.2指針參數63
3.2.3引用參數64
3.2 .4函數的返回類型66
3.3函數調用機制69
3.3.1嵌套調用69
3.3.2遞歸調用70
3.4函數地址與函數指針75
3.4.1函數地址75
3.4.2函數指針76
3.5內聯函數與重載函數80
3.5.1內聯函數80
3.5.2重載函數81
3.6變量存儲特性與標識符作用域82
3.6.1存儲特性82
3.6.2標識符的作用域與可見性83
3.7多文件程序86
3.7.1多文件結構86
3.7.2預處理指令87
3.7.3多文件程序使用全局變量91
3.8命名空間92
3.8.1標準命名空間92
3.8.2定義命名空間93
3.8.3使用命名空間94
3.9終止程序執行96
習題97
4章數組100
4.1一維數組100
4.1.1一維數組的定義與初始化100
4.1.2一維數組的訪問102
4.2指針數組104
4.2.1指向基本數據類型的指針數組105
4.2.2指向數組的指針數組105
4.2.3指向函數的指針數組106
4.3二維數組107
4.3.1二維數組的定義與初始化107
4.3.2二維數組的訪問108
4.4數組作為函數參數111
4.4.1向函數傳送數組元素111
4.4.2數組名作為函數參數112
4.4.3應用舉例114
4.5動態存儲118
4.5.1 new與delete作符118
4.5.2動態存儲的應用118
4.6 vector類121
4.7字符串123
4.7.1 C字符串123
4.7.2 string類127
習題132
5章集合與結構134
5.1位運算134
5.2集合139
5.2.1集合的基本運算139
5.2.2集合運算的實現140
5.3結構146
5.3.1定義結構146
5.3.2訪問結構147
5.3.3結構參數149
5.4結構數組151
5.5鍊錶154
習題162
6章類與對象165
6.1類與對象的定義和訪問165
6.1.1定義類與對象166
6.1.2訪問對象成員168
6.1.3 this指針169
6.2構造函數與析構函數169
6.2.1簡單構造函數與析構函數170
6.2.2帶參數的構造函數171
6.2.3重載構造函數172
6.2.4拷貝構造函數173
6.3類的其他成員178
6.3.1常成員178
6.3.2靜態成員181
6.3.3友元184
6.4類的包含187
習題190
7章運算符重載192
7.1運算符重載規則192
7.1.1重載運算符的限制192
7.1.2重載運算符的語法192
7.2用成員或友元函數重載運算符194
7.2.1用成員函數重載運算符195
7.2.2用友元函數重載運算符197
7.3幾個典型運算符的重載199
7.3.1重載++與--運算符199
7.3.2重載賦值運算符201
7.3.3重載[ ]與()運算符202
7.3 .4重載流插入與流提取運算符203
7.4類類型轉換211
7.4.1使用構造函數211
7.4.2使用類型轉換函數212
習題215
8章繼承217
8.1類之間的關係217
8.2基類與派生類218
8.2.1訪問控制218
8.2.2重名成員225
8.2.3派生類中訪問靜態成員227
8.3基類的初始化228
8.4繼承的應用實例230
8.5多繼承235
8.5.1多繼承的派生類構造與訪問236
8.5.2虛繼承238
習題242
9章虛函數與多態性245
9.1靜態聯編245
9.2類指針的關係246
9.2.1用基類指針引用派生類對象246
9.2.2用派生類指針引用基類對象247
9.3虛函數與動態聯編249
9.3.1虛函數與基類指針249
9.3.2虛函數的重載特性252
9.3.3虛析構函數254
9.4純虛函數與抽像類255
9.4.1純虛函數256
9.4.2抽像類257
9.5虛函數與多態性的應用259
9.5.1一個實例259
9.5.2異質鍊錶264
習題266
10章模板267
10.1什麼是模板267
10.2函數模板267
10.2.1模闆說明267
10.2.2函數模板與模板函數268
10.2.3重載函數模板270
10.3類模板271
10.3.1類模板與模板類271
10.3.2類模板作為函數參數273
10.3.3在類層次中的類模板275
10.3.4類模板與友元277
10.3.5類模板與靜態成員279
10.4標準模板280
10.4.1容器281
10.4.2迭代器285
10.4.3算法287
習題290
11章輸入流/輸出流291
11.1流類與流對象291
11.1.1流類庫291
11.1.2頭文件292
11.2標準流與流作292
11.2.1標準流293
11.2.2輸入流作293
11.2. 3輸出流作295
11.2.4流錯誤狀態296
11.3格式控制297
11.3.1設置標誌字298
11.3.2格式控制符301
11.4串流303
11.5文件處理304
11.5.1文件與流305
11.5.2打開和關閉文件305
11.5.3文本文件307
11.5.4二進制數據文件311
習題322
12章異常處理323
12.1 C++的異常處理機制323
12.2異常處理的實現324
12.2.1異常處理程序324
12.2.2帶異常說明的函數原型327
12.2.3再拋出異常傳遞328
12.2.4創建對象的異常處理329
習題329
附錄A控制台程序設計331
A.1 Visual Studio 2015集成開發環境331
A.2建立控制台應用程序332
A.2.1創建簡單應用程序332
A.2.2程序調試335
A.2.3建立多文件程序338
A.2.4命令行方式執行程序341
附錄B常用庫函數346
附錄C ASCII碼字符集356
作者介紹
週靄如,華南理工大學,教授,已退休。
出版教材:《計算機系統應用教程》,《FoxPro數據庫管理基礎》,《Visual Basic程序設計教程》,《Visual Basic程序設計》,《C++程序設計基礎》1~5版。
華南理工大學計算機學院"高級語言程序設計(C++)”課程負責人,該課程是2007年精品網絡課程,2012年精品資源共享課程。