c++程式設計[袁方、王亮編著書籍]

c++程式設計[袁方、王亮編著書籍]

本書全面介紹了有關C++程式設計的知識,包括C++入門、基本數據類型與表達式、語句與結構化程式設計、數組與字元串、函式、指針、自定義數據類型、C++程式結構、類和對象、繼承與派生、運算符重載、多態與虛函式、模板、輸入輸出流和檔案、異常處理、綜合實例、集成開發環境等內容。

內容簡介

本書全面介紹了有關C++程式設計的知識,包括C++入門、基本數據類型與表達式、語句與結構化程式設計、數組與字元串、函式、指針、自定義數據類型、C++程式結構、類和對象、繼承與派生、運算符重載、多態與虛函式、模板、輸入輸出流和檔案、異常處理、綜合實例、集成開發環境等內容。通過本書,讀者可以學習程式設計知識、掌握程式設計方法、提高程式設計能力、形成程式設計風格、培養程式設計思維,並為進一步深入學習後續專業課程,提高綜合素質和能力奠定良好的基礎。本書既可作為高等學校計算機及相關專業程式設計課程的教材,也可作為自學程式設計的參考書。

圖書目錄

第1章C++入門1

1.1C++簡介1

1.1.1C++的產生與發展1

1.1.2C++的特點2

1.2簡單的C++程式3

1.2.1C++程式結構3

1.2.2輸入與輸出5

1.2.3注釋6

1.3C++程式的上機執行過程7

1.4程式設計語言介紹8

1.4.1機器語言8

1.4.2彙編語言9

1.4.3高級語言10

習題113第2章基本數據類型與表達式14

2.1字元集與標識符14

2.1.1字元集14

2.1.2標識符14

2.1.3關鍵字15

2.2基本數據類型16

2.2.1整型16

2.2.2字元型16

2.2.3布爾型17

2.2.4浮點型17

2.3常量18

2.3.1數值型常量18

2.3.2字元型常量19

2.4變數20

2.4.1變數的定義20

2.4.2常變數21

2.5運算符與表達式23

2.5.1算術運算符與算術表達式23

2.5.2賦值運算符與賦值表達式24

2.5.3逗號運算符與逗號表達式24

2.5.4自增自減運算符25

2.5.5類型轉換25

2.5.6位運算符與位運算表達式27

2.6計算機中的數據表示29

2.6.1計算機中的數制29

2.6.2數值型數據的表示31

2.6.3字元型數據的編碼表示33

習題233第3章語句與結構化程式設計34

3.1功能語句與順序結構程式設計34

3.1.1賦值語句34

3.1.2空語句34

3.1.3複合語句34

3.1.4順序結構程式設計34

3.2分支語句與分支結構程式設計35

3.2.1關係表達式和邏輯表達式35

3.2.2if語句38

3.2.3if…else語句38

3.2.4條件運算符與條件表達式40

3.2.5switch語句41

3.3循環語句與循環結構程式設計42

3.3.1for循環語句43

3.3.2do…while循環語句45

3.3.3while循環語句47

3.3.4循環語句的嵌套48

3.4轉移語句49

3.4.1break語句49

3.4.2continue語句49

3.4.3goto語句50

3.5程式舉例51

3.6算法與程式設計58

3.6.1算法設計與分析58

3.6.2程式設計風格61

習題362第4章數組與字元串63

4.1數組的定義與使用63

4.1.1一維數組的定義與使用63

4.1.2二維數組的定義與使用64

4.2數組的初始化66

4.3數組套用舉例67

4.3.1一維數組套用68

4.3.2二維數組套用73

4.4字元串76

4.4.1字元串變數的定義與使用76

4.4.2字元串變數的輸入輸出77

4.4.3字元串運算78

4.4.4字元串數組79

4.5字元數組81

4.6動態數組82

4.7靜態數組訪問的下標越界問題84

習題485第5章函式86

5.1函式定義86

5.2函式調用與函式聲明87

5.2.1函式調用87

5.2.2函式聲明88

5.3函式的參數傳遞90

5.3.1值傳遞90

5.3.2引用傳遞91

5.3.3函式的默認形參值92

5.4函式的嵌套與遞歸93

5.4.1函式嵌套94

5.4.2函式遞歸94

5.5數組作函式參數97

5.5.1數組元素作函式參數97

5.5.2一維數組名作函式參數98

5.5.3二維數組名作函式參數99

5.6內聯函式100

5.7重載函式101

5.8系統函式103

習題5104第6章指針106

6.1指針變數106

6.1.1記憶體單元地址106

6.1.2指針變數的定義107

6.2指針的賦值與運算107

6.2.1指針的賦值107

6.2.2指針的運算108

6.3指針作為函式參數110

6.4指針與數組111

6.4.1數組的地址111

6.4.2指針與一維數組111

6.4.3指針與二維數組112

6.4.4指針數組114

6.5動態記憶體分配116

6.6函式指針119

習題6122

第7章自定義數據類型123

7.1結構體類型123

7.1.1結構體類型的定義123

7.1.2結構體變數的定義與初始化124

7.1.3結構體變數的引用125

7.2結構體套用127

7.2.1結構體數組127

7.2.2結構體和指針129

7.2.3結構體和函式131

7.3共用體134

7.3.1共用體的定義135

7.3.2共用體的套用136

7.4鍊表137

7.4.1線性表137

7.4.2線性鍊表138

7.4.3線性鍊表的操作139

7.5枚舉類型144

7.5.1枚舉類型和枚舉變數的定義144

7.5.2枚舉變數的賦值和引用145

7.5.3枚舉變數值的輸入與輸出145

習題7147第8章C++程式結構149

8.1C++程式構成149

8.2預處理命令150

8.2.1宏定義150

8.2.2檔案包含151

8.2.3條件編譯153

8.3變數的作用域156

8.3.1局部變數156

8.3.2全局變數156

8.4變數的存儲類別157

8.4.1局部自動變數158

8.4.2局部暫存器變數159

8.4.3局部靜態變數159

8.4.4外部變數聲明160

8.5內部函式與外部函式162

8.5.1內部函式162

8.5.2外部函式163

習題8164第9章類和對象165

9.1面向對象程式設計概述165

9.1.1面向對象的概念165

9.1.2面向對象程式設計的特點165

9.1.3面向對象與面向過程的區別166

9.2類和對象167

9.2.1類的定義167

9.2.2對象的定義170

9.2.3對象成員的訪問171

9.3構造函式173

9.3.1不帶參數的構造函式173

9.3.2帶參數的構造函式174

9.3.3帶默認值的構造函式175

9.3.4帶初始化表的構造函式176

9.3.5構造函式的重載178

9.4析構函式180

9.5複製構造函式183

9.5.1對象的賦值183

9.5.2對象的複製184

9.6對象數組188

9.7const對象和const成員190

9.8成員函式存儲與this指針192

9.9類靜態成員194

9.9.1靜態數據成員194

9.9.2靜態成員函式195

9.10友元函式與友元類197

9.10.1友元函式199

9.10.2友元類201

習題9202第10章繼承與派生203

10.1繼承與派生的概念203

10.2派生類的聲明204

10.2.1派生類的聲明204

10.2.2派生類的構成205

10.3派生類成員的訪問特性207

10.3.1公有繼承207

10.3.2私有繼承208

10.3.3保護繼承208

10.3.4多級派生時的訪問特性209

10.4派生類的構造函式和析構函式212

10.4.1簡單派生類的構造函式213

10.4.2有子對象的派生類的構造函式215

10.4.3派生類的析構函式216

10.5基類與派生類的轉換218

10.5.1派生類對象的值可以賦給基類對象218

10.5.2派生類對象可以作為基類對象使用219

10.6類的繼承與組合220

10.7繼承在軟體開發中的作用221

10.8多基類繼承224

10.8.1定義多基類繼承224

10.8.2多繼承派生類的構造函式226

10.8.3基類成員名衝突227

10.8.4虛基類228

習題10232第11章運算符重載233

11.1運算符重載的實現233

11.2運算符重載規則237

11.3運算符重載函式238

11.4重載流插入和流提取運算符241

11.5數據的類型轉換244

11.5.1用轉換構造函式實現類型轉換245

11.5.2用類型轉換函式實現類型轉換247

習題11250第12章多態與虛函式251

12.1多態性和綁定251

12.2虛函式254

12.2.1虛函式的定義254

12.2.2虛析構函式255

12.3純虛函式與抽象類257

12.3.1純虛函式257

12.3.2抽象類260

12.4動態綁定與虛函式表263

12.4.1多態類與非多態類263

12.4.2動態綁定的實現265

習題12267第13章模板268

13.1模板的引入268

13.2函式模板269

13.2.1函式模板的定義269

13.2.2函式模板的調用269

13.2.3函式模板的重載271

13.3類模板274

13.3.1類模板的定義和使用274

13.3.2類模板的繼承275

13.4類模板套用275

13.4.1數組類模板275

13.4.2線性鍊表類模板278

習題13281第14章輸入輸出流和檔案282

14.1輸入輸出與流282

14.2C++的流類和流對象283

14.3標準輸入輸出流283

14.3.1標準輸出流284

14.3.2標準輸入流285

14.3.3流成員函式287

14.4設定輸入輸出格式290

14.5檔案處理294

14.5.1檔案的打開和關閉294

14.5.2對ASCII碼檔案的讀寫296

14.5.3對二進制檔案的讀寫298

習題14302第15章異常處理303

15.1異常處理的基本思路303

15.2C++異常處理的實現306

15.2.1簡單異常處理306

15.2.2類類型異常處理309

習題15311第16章綜合實例312

16.1用面向過程的方法設計人人對弈程式313

16.2用面向對象的方法設計人人對弈程式329

16.3擴展遊戲程式343

習題16344第17章集成開發環境345

17.1VisualStudio2010的安裝與啟動345

17.2VisualStudio2010的操作界面346

17.3創建和打開項目349

17.3.1創建項目349

17.3.2在解決方案中新建項目350

17.3.3在項目中添加項351

17.3.4打開項目355

17.3.5編輯源程式356

17.4生成和運行項目356

17.5調試程式357

習題17364附錄AASCII碼錶365參考文獻366

第1章C++入門1

1.1C++簡介1

1.1.1C++的產生與發展1

1.1.2C++的特點2

1.2簡單的C++程式3

1.2.1C++程式結構3

1.2.2輸入與輸出5

1.2.3注釋6

1.3C++程式的上機執行過程7

1.4程式設計語言介紹8

1.4.1機器語言8

1.4.2彙編語言9

1.4.3高級語言10第2章基本數據類型與表達式14

2.1字元集與標識符14

2.1.1字元集14

2.1.2標識符14

2.1.3關鍵字15

2.2基本數據類型16

2.2.1整型16

2.2.2字元型16

2.2.3布爾型17

2.2.4浮點型17

2.3常量18

2.3.1數值型常量18

2.3.2字元型常量19

2.4變數20

2.4.1變數20

2.4.2常變數21

2.5運算符與表達式23

2.5.1算術運算符與算術表達式23

2.5.2賦值運算符與賦值表達式24

2.5.3逗號運算符與逗號表達式24

2.5.4自增自減運算符25

2.5.5類型轉換25

2.5.6位運算符與位運算表達式27

2.6計算機中的數據表示29

2.6.1計算機中的數制29

2.6.2數值型數據的表示31

2.6.3字元型數據的編碼表示33第3章語句與結構化程式設計34

3.1功能語句與順序結構程式設計34

3.1.1賦值語句34

3.1.2空語句34

3.1.3複合語句34

3.1.4順序結構程式設計34

3.2分支語句與分支結構程式設計35

3.2.1關係表達式和邏輯表達式35

3.2.2if語句38

3.2.3if…else語句38

3.2.4條件運算符與條件表達式40

3.2.5switch語句41

3.3循環語句與循環結構程式設計42

3.3.1for循環語句43

3.3.2do…while循環語句45

3.3.3while循環語句47

3.3.4循環語句的嵌套48

3.4轉移語句49

3.4.1break語句49

3.4.2continue語句49

3.4.3goto語句50

3.5程式舉例51

3.6算法與程式設計58

3.6.1算法設計與分析58

3.6.2程式設計風格61

習題362第4章數組與字元串63

4.1數組的定義與使用63

4.1.1一維數組的定義與使用63

4.1.2二維數組的定義與使用64

4.2數組的初始化66

4.3數組套用舉例67

4.3.1一維數組套用68

4.3.2二維數組套用73

4.4字元串76

4.4.1字元串變數的定義與使用76

4.4.2字元串變數的輸入輸出77

4.4.3字元串運算78

4.4.4字元串數組79

4.5字元數組81

4.6動態數組82

4.7靜態數組訪問的下標越界問題84

習題485第5章函式86

5.1函式定義86

5.2函式調用與函式聲明87

5.2.1函式調用87

5.2.2函式聲明88

5.3函式的參數傳遞90

5.3.1值傳遞90

5.3.2引用傳遞91

5.3.3函式的默認形參值92

5.4函式的嵌套與遞歸93

5.4.1函式嵌套94

5.4.2函式遞歸94

5.5數組作函式參數97

5.5.1數組元素作函式參數97

5.5.2一維數組名作函式參數98

5.5.3二維數組名作函式參數99

5.6內聯函式100

5.7重載函式101

5.8系統函式103

習題5104第6章指針106

6.1指針變數106

6.1.1記憶體單元地址106

6.1.2指針變數的定義107

6.2指針的賦值與運算107

6.2.1指針的賦值107

6.2.2指針的運算108

6.3指針作為函式參數110

6.4指針與數組111

6.4.1數組的地址111

6.4.2指針與一維數組111

6.4.3指針與二維數組112

6.4.4指針數組114

6.5動態記憶體分配116

6.6函式指針119

習題6122第7章自定義數據類型123

7.1結構體類型123

7.1.1結構體類型的定義123

7.1.2結構體變數的定義與初始化124

7.1.3結構體變數的引用125

7.2結構體套用127

7.2.1結構體數組127

7.2.2結構體和指針129

7.2.3結構體和函式131

7.3共用體134

7.3.1共用體的定義135

7.3.2共用體的套用136

7.4鍊表137

7.4.1線性表137

7.4.2線性鍊表138

7.4.3線性鍊表的操作139

7.5枚舉類型144

7.5.1枚舉類型和枚舉變數的定義144

7.5.2枚舉變數的賦值和引用145

7.5.3枚舉變數值的輸入與輸出145

習題7147第8章C++程式結構149

8.1C++程式構成149

8.2預處理命令150

8.2.1宏定義150

8.2.2檔案包含151

8.2.3條件編譯153

8.3變數的作用域156

8.3.1局部變數156

8.3.2全局變數156

8.4變數的存儲類別157

8.4.1局部自動變數158

8.4.2局部暫存器變數159

8.4.3局部靜態變數159

8.4.4外部變數聲明160

8.5內部函式與外部函式162

8.5.1內部函式162

8.5.2外部函式163

習題8164第9章類和對象165

9.1面向對象程式設計概述165

9.1.1面向對象的概念165

9.1.2面向對象程式設計的特點165

9.1.3面向對象與面向過程的區別166

9.2類和對象167

9.2.1類的定義167

9.2.2對象的定義170

9.2.3對象成員的訪問171

9.3構造函式173

9.3.1不帶參數的構造函式173

9.3.2帶參數的構造函式174

9.3.3帶默認值的構造函式175

9.3.4帶初始化表的構造函式176

9.3.5構造函式的重載178

9.4析構函式180

9.5複製構造函式183

9.5.1對象的賦值183

9.5.2對象的複製184

9.6對象數組188

9.7const對象和const成員190

9.8成員函式存儲與this指針192

9.9類靜態成員194

9.9.1靜態數據成員194

9.9.2靜態成員函式195

9.10友元函式與友元類197

9.10.1友元函式199

9.10.2友元類201

習題9202第10章繼承與派生203

10.1繼承與派生的概念203

10.2派生類的聲明204

10.2.1派生類的聲明204

10.2.2派生類的構成205

10.3派生類成員的訪問特性207

10.3.1公有繼承207

10.3.2私有繼承208

10.3.3保護繼承208

10.3.4多級派生時的訪問特性209

10.4派生類的構造函式和析構函式212

10.4.1簡單派生類的構造函式213

10.4.2有子對象的派生類的構造函式215

10.4.3派生類的析構函式216

10.5基類與派生類的轉換218

10.5.1派生類對象的值可以賦給基類對象218

10.5.2派生類對象可以作為基類對象使用219

10.6類的繼承與組合220

10.7繼承在軟體開發中的作用221

10.8多基類繼承224

10.8.1定義多基類繼承224

10.8.2多繼承派生類的構造函式226

10.8.3基類成員名衝突227

10.8.4虛基類228

習題10232第11章運算符重載233

11.1運算符重載的實現233

11.2運算符重載規則237

11.3運算符重載函式238

11.4重載流插入和流提取運算符241

11.5數據的類型轉換244

11.5.1用轉換構造函式實現類型轉換245

11.5.2用類型轉換函式實現類型轉換247

習題11250第12章多態與虛函式251

12.1多態性和綁定251

12.2虛函式254

12.2.1虛函式的定義254

12.2.2虛析構函式255

12.3純虛函式與抽象類257

12.3.1純虛函式257

12.3.2抽象類260

12.4動態綁定與虛函式表263

12.4.1多態類與非多態類263

12.4.2動態綁定的實現265

習題12267第13章模板268

13.1模板的引入268

13.2函式模板269

13.2.1函式模板的定義269

13.2.2函式模板的調用269

13.2.3函式模板的重載271

13.3類模板274

13.3.1類模板的定義和使用274

13.3.2類模板的繼承275

13.4類模板套用275

13.4.1數組類模板275

13.4.2線性鍊表類模板278

習題13281第14章輸入輸出流和檔案282

14.1輸入輸出與流282

14.2C++的流類和流對象283

14.3標準輸入輸出流283

14.3.1標準輸出流284

14.3.2標準輸入流285

14.3.3流成員函式287

14.4設定輸入輸出格式290

14.5檔案處理294

14.5.1檔案的打開和關閉294

14.5.2對ASCII碼檔案的讀寫296

14.5.3對二進制檔案的讀寫298

習題14302第15章異常處理303

15.1異常處理的基本思路303

15.2C++異常處理的實現306

15.2.1簡單異常處理306

15.2.2類類型異常處理309

習題15311第16章綜合實例312

16.1用面向過程的方法設計人人對弈程式313

16.2用面向對象的方法設計人人對弈程式329

16.3擴展遊戲程式343

習題16344第17章集成開發環境345

17.1VisualStudio2010的安裝與啟動345

17.2VisualStudio2010的操作界面346

17.3創建和打開項目349

17.3.1創建項目349

17.3.2在解決方案中新建項目350

17.3.3在項目中添加項351

17.3.4打開項目355

17.3.5編輯源程式356

17.4生成和運行項目356

17.5調試程式357

習題17364附錄AASCII碼錶365參考文獻366

第1章C++入門1

1.1C++簡介1

1.1.1C++的產生與發展1

1.1.2C++的特點2

1.2簡單的C++程式3

1.2.1C++程式結構3

1.2.2輸入與輸出5

1.2.3注釋6

1.3C++程式的上機執行過程7

1.4程式設計語言介紹8

1.4.1機器語言8

1.4.2彙編語言9

1.4.3高級語言10第2章基本數據類型與表達式14

2.1字元集與標識符14

2.1.1字元集14

2.1.2標識符14

2.1.3關鍵字15

2.2基本數據類型16

2.2.1整型16

2.2.2字元型16

2.2.3布爾型17

2.2.4浮點型17

2.3常量18

2.3.1數值型常量18

2.3.2字元型常量19

2.4變數20

2.4.1變數20

2.4.2常變數21

2.5運算符與表達式23

2.5.1算術運算符與算術表達式23

2.5.2賦值運算符與賦值表達式24

2.5.3逗號運算符與逗號表達式24

2.5.4自增自減運算符25

2.5.5類型轉換25

2.5.6位運算符與位運算表達式27

2.6計算機中的數據表示29

2.6.1計算機中的數制29

2.6.2數值型數據的表示31

2.6.3字元型數據的編碼表示33第3章語句與結構化程式設計34

3.1功能語句與順序結構程式設計34

3.1.1賦值語句34

3.1.2空語句34

3.1.3複合語句34

3.1.4順序結構程式設計34

3.2分支語句與分支結構程式設計35

3.2.1關係表達式和邏輯表達式35

3.2.2if語句38

3.2.3if…else語句38

3.2.4條件運算符與條件表達式40

3.2.5switch語句41

3.3循環語句與循環結構程式設計42

3.3.1for循環語句43

3.3.2do…while循環語句45

3.3.3while循環語句47

3.3.4循環語句的嵌套48

3.4轉移語句49

3.4.1break語句49

3.4.2continue語句49

3.4.3goto語句50

3.5程式舉例51

3.6算法與程式設計58

3.6.1算法設計與分析58

3.6.2程式設計風格61第4章數組與字元串62

4.1數組的定義與使用62

4.1.1一維數組的定義與使用62

4.1.2二維數組的定義與使用63

4.2數組的初始化65

4.3數組套用舉例66

4.3.1一維數組套用67

4.3.2二維數組套用72

4.4字元串75

4.4.1字元串變數的定義與使用75

4.4.2字元串變數的輸入輸出76

4.4.3字元串運算77

4.4.4字元串數組78

4.5字元數組80

4.6動態數組81

4.7靜態數組訪問的下標越界問題83第5章函式84

5.1函式定義84

5.2函式調用與函式聲明85

5.2.1函式調用85

5.2.2函式聲明86

5.3函式的參數傳遞88

5.3.1值傳遞88

5.3.2引用傳遞89

5.3.3函式的默認形參值90

5.4函式的嵌套與遞歸91

5.4.1函式嵌套92

5.4.2函式遞歸92

5.5數組作函式參數95

5.5.1數組元素作函式參數95

5.5.2一維數組名作函式參數96

5.5.3二維數組名作函式參數97

5.6內聯函式98

5.7重載函式99

5.8系統函式101第6章指針103

6.1指針變數103

6.1.1記憶體單元地址103

6.1.2指針變數的定義104

6.2指針的賦值與運算104

6.2.1指針的賦值104

6.2.2指針的運算105

6.3指針作為函式參數107

6.4指針與數組108

6.4.1數組的地址108

6.4.2指針與一維數組108

6.4.3指針與二維數組109

6.4.4指針數組111

6.5動態記憶體分配112

6.6函式指針115第7章自定義數據類型119

7.1結構體類型119

7.1.1結構體類型的定義119

7.1.2結構體變數的定義與初始化120

7.1.3結構體變數的引用121

7.2結構體套用123

7.2.1結構體數組123

7.2.2結構體和指針125

7.2.3結構體和函式127

7.3共用體130

7.3.1共用體的定義131

7.3.2共用體的套用132

7.4鍊表133

7.4.1線性表133

7.4.2線性鍊表134

7.4.3線性鍊表的操作135

7.5枚舉類型140

7.5.1枚舉類型和枚舉變數的定義140

7.5.2枚舉變數的賦值和引用141

7.5.3枚舉變數值的輸入與輸出141第8章C++程式結構144

8.1C++程式構成144

8.2預處理命令145

8.2.1宏定義145

8.2.2檔案包含146

8.2.3條件編譯148

8.3變數的作用域151

8.3.1局部變數151

8.3.2全局變數151

8.4變數的存儲類別152

8.4.1局部動態變數153

8.4.2局部暫存器變數154

8.4.3局部靜態變數154

8.4.4外部變數聲明155

8.5內部函式與外部函式157

8.5.1內部函式157

8.5.2外部函式158第9章類和對象160

9.1面向對象程式設計概述160

9.1.1面向對象的概念160

9.1.2面向對象程式設計的特點160

9.1.3面向對象與面向過程的區別161

9.2類和對象162

9.2.1類的定義162

9.2.2對象的定義165

9.2.3對象成員的訪問166

9.3構造函式168

9.3.1不帶參數的構造函式168

9.3.2帶參數的構造函式169

9.3.3帶默認值的構造函式170

9.3.4帶初始化表的構造函式171

9.3.5構造函式的重載173

9.4析構函式175

9.5複製構造函式178

9.5.1對象的賦值178

9.5.2對象的複製179

9.6對象數組183

9.7const對象和const成員185

9.8成員函式存儲與this指針187

9.9類靜態成員189

9.9.1靜態數據成員189

9.9.2靜態成員函式190

9.10友元函式與友元類192

9.10.1友元函式194

9.10.2友元類196第10章繼承與派生197

10.1繼承與派生的概念197

10.2派生類的聲明198

10.2.1派生類的聲明198

10.2.2派生類的構成199

10.3派生類成員的訪問特性201

10.3.1公有繼承201

10.3.2私有繼承202

10.3.3保護繼承202

10.3.4多級派生時的訪問特性203

10.4派生類的構造函式和析構函式206

10.4.1簡單派生類的構造函式207

10.4.2有子對象的派生類的構造函式209

10.4.3派生類的析構函式210

10.5基類與派生類的轉換212

10.5.1派生類對象的值可以賦給基類對象212

10.5.2派生類對象可以作為基類對象使用213

10.6類的繼承與組合214

10.7繼承在軟體開發中的作用215

10.8多基類繼承218

10.8.1定義多基類繼承218

10.8.2多繼承派生類的構造函式220

10.8.3基類成員名衝突221

10.8.4虛基類222第11章運算符重載227

11.1運算符重載的實現227

11.2運算符重載規則231

11.3運算符重載函式232

11.4重載流插入和流提取運算符235

11.5數據的類型轉換238

11.5.1用轉換構造函式實現類型轉換238

11.5.2用類型轉換函式實現類型轉換241第12章多態與虛函式245

12.1多態性和綁定245

12.2虛函式248

12.2.1虛函式的定義248

12.2.2虛析構函式249

12.3純虛函式與抽象類251

12.3.1純虛函式251

12.3.2抽象類254

12.4動態綁定與虛函式表257

12.4.1多態類與非多態類257

12.4.2動態綁定的實現259第13章模板261

13.1模板的引入261

13.2函式模板262

13.2.1函式模板的定義262

13.2.2函式模板的調用262

13.2.3函式模板的重載264

13.3類模板267

13.3.1類模板的定義和使用267

13.3.2類模板的繼承268

13.4類模板套用268

13.4.1數組類模板268

13.4.2線性鍊表類模板271第14章輸入輸出流和檔案275

14.1輸入輸出與流275

14.2C++的流類和流對象276

14.3標準輸入輸出流276

14.3.1標準輸出流277

13.4.2標準輸入流278

14.3.3流成員函式280

14.4設定輸入輸出格式283

14.5檔案處理287

14.5.1檔案的打開和關閉287

14.5.2對ASCII碼檔案的讀寫289

14.5.3對二進制檔案的讀寫291第15章異常處理296

15.1異常處理的基本思路296

15.2C++異常處理的實現299

15.2.1簡單異常處理299

15.2.2類類型異常處理302第16章綜合實例305

16.1用面向過程的方法設計人人對弈程式306

16.2用面向對象的方法設計人人對弈程式322

16.3擴展遊戲程式336第17章集成開發環境338

17.1VisualStudio2010的安裝與啟動338

17.2VisualStudio2010的操作界面339

17.3創建和打開項目342

17.3.1創建項目342

17.3.2在解決方案中新建項目343

17.3.3在項目中添加項344

17.3.4打開項目348

17.3.5編輯源程式349

17.4生成和運行項目349

17.5調試程式350附錄AASCII碼錶357參考文獻358

熱門詞條

聯絡我們