C++語言從入門到精通(視頻實戰版)

C++語言從入門到精通(視頻實戰版)

《C++語言從入門到精通(視頻實戰版)》是2011年機械工業出版社出版的圖書,作者是陳國建游梁張建輝。

基本介紹

  • 書名:C++語言從入門到精通(視頻實戰版)
  • 作者:陳國建    游梁    張建輝
  • ISBN:9787111325468
  • 出版社:機械工業出版社
基本信息,內容簡介,目錄,

基本信息

叢書名: 程式設計師書庫
上架時間:2011-1-27
出版日期:2011 年1月
開本:16開
頁碼:417

內容簡介

本書是一本全面介紹c++的書籍,講解由淺入深、循序漸進,可使讀者熟練掌握c++,並能開發c++應用程式。
本書分為五篇,第一篇是c++基礎篇,介紹了c++程式設計入門、c++變數與運算符以及c++選擇和循環語句等基礎知識。第二篇討論了c++面向過程編程的一些知識點,討論了數組與字元串、指針與記憶體、如何自定義數據類型(結構體)和函式的基本知識。第三篇是c++面向對象編程,重點在於類和對象、運算符重載、類的繼承和多態與虛函式等。第四篇談論了c++泛型編程,包括c++模板和標準模板庫(stl)。第五篇介紹了c++輸入/輸出處理和編碼規範,討論了輸入/輸出、檔案操作、命名空間、異常和錯誤處理的基本知識。

目錄

叢書序
前言
第一篇 c++基礎
第1章 c++程式設計入門 1
1.1 面向對象的程式概述 1
1.1.1 面向過程的程式設計 1
1.1.2 面向對象的程式設計 2
1.2 c++概述 2
1.2.1 c++的發展歷程 2
1.2.2 c++的特點 3
1.3 visual c++開發環境 3
1.3.1 visual c++ 6.0簡介 4
1.3.2 visual c++開發環境概述 4
1.4 c、c++與visual c++ 14
1.4.1 c與c++ 14
1.4.2 c++與visual c++ 14
1.5 第一個c++程式 15
1.5.1 c++程式的結構 15
1.5.2 創建源程式 18
1.5.3 編譯、連結和運行程式 18
.1.6 小結 19
1.7 習題 19
第2章 變數與運算符 20
2.1 變數與基本數據類型 20
2.1.1 什麼是變數 20
2.1.2 如何定義變數 22
2.1.3 整型 23
2.1.4 浮點型 28
2.1.5 字元類型 30
2.1.6 布爾類型 33
2.2 常量 34
2.2.1 什麼是常量 34
2.2.2 數值常量—整型常量和實型常量 34
2.2.3 字元型常量 35
2.2.4 字元串常量 35
2.3 算術運算符與算術表達式 36
2.3.1 基本算術運算符 36
2.3.2 關係運算符 37
2.3.3 邏輯運算符 37
2.3.4 位運算符 38
2.3.5 sizeof運算符 39
2.3.6 強制類型轉換 39
2.3.7 運算符的優先權與結合性 41
2.3.8 算術表達式 41
2.3.9 邏輯表達式 42
2.3.10 賦值表達式 42
2.3.11 逗號表達式 42
2.4 小結 43
2.5 習題 43
第3章 選擇與循環 44
3.1 選擇結構和if語句 44
3.1.1 if語句的3種形式 44
3.1.2 if語句的嵌套 49
3.1.3 switch選擇語句 52
3.2 循環結構和循環語句 58
3.2.1 while循環結構 58
3.2.2 for循環結構 59
3.2.3 do-while循環結構 62
3.2.4 循環的嵌套 63
3.2.5 幾種循環的比較 64
3.2.6 循環語句的效率 65
3.2.7 break、continue和goto語句 66
3.3 小結 74
3.4 習題 75
第二篇 c++過程開發
第4章 數組與字元串 77
4.1 數組的概念 77
4.2 一維數組的定義和引用 78
4.2.1 一維數組的定義 78
4.2.2 一維數組元素的引用 79
4.2.3 一維數組的初始化 80
4.2.4 一維數組與指針 82
4.3 二維數組的定義和引用 83
4.3.1 二維數組的定義 83
4.3.2 二維數組元素的引用 84
4.3.3 二維數組的初始化 85
4.3.4 多維數組的使用 87
4.4 指針與數組 89
4.4.1 指針與數組的關係 89
4.4.2 指向數組元素的指針 89
4.4.3 指針與一維數組 89
4.4.4 指針與多維數組 90
4.4.5 指針與字元數組 90
4.5 指針數組與數組指針 91
4.5.1 指針數組 91
4.5.2 數組指針 91
4.6 動態分配二維數組 92
4.6.1 已知二維數組的第二維進行動態分配 92
4.6.2 已知二維數組的第一維進行動態分配 93
4.6.3 已知二維數組的第一維並一次分配記憶體 94
4.6.4 二維數組的兩維都未知的情況下進行動態分配 95
4.6.5 二維數組的兩維都未知的情況下一次分配記憶體 96
4.7 字元數組與字元串 97
4.7.1 字元數組 97
4.7.2 字元串及其使用 99
4.7.3 字元串處理函式 100
4.8 小結 104
4.9 習題 104
第5章 指針與記憶體 106
5.1 指針的概念 106
5.2 變數與指針 106
5.2.1 定義指針變數 106
5.2.2 引用指針變數 108
5.2.3 引用指針變數與指針的指針 109
5.2.4 指針作函式參數 110
5.3 數組與指針 112
5.3.1 指向數組元素的指針 112
5.3.2 用指針變數作函式參數接收數組地址 113
5.3.3 多維數組與指針 115
5.4 函式與指針 117
5.4.1 函式指針與指針函式 117
5.4.2 用指向函式的指針作函式參數 120
5.5 動態記憶體分配 121
5.5.1 使用new動態分配記憶體 121
5.5.2 使用new申請動態數組 123
5.6 小結 125
5.7 習題 125
第6章 自定義數據類型 127
6.1 結構體類型 127
6.1.1 結構體概述 127
6.1.2 結構體類型變數的定義方法及其初始化 128
6.1.3 結構體變數的引用 132
6.1.4 結構體數組 133
6.1.5 指向結構體變數的指針 135
6.1.6 結構體類型數據作為函式參數 136
6.2 共用體 138
6.2.1 共用體的語法形式 139
6.2.2 定義共用體變數 139
6.2.3 共用體變數的引用 140
6.3 枚舉類型 142
6.4 鍊表 143
6.4.1 鍊表的結構 143
6.4.2 創建鍊表 144
6.4.3 鍊表與數組的區別 144
6.4.4 刪除整個鍊表 145
6.4.5 在鍊表中插入結點 145
6.5 小結 146
6.6 習題 146
第7章 函式 148
7.1 函式概述 148
7.2 函式定義 150
7.2.1 無參函式 150
7.2.2 有參函式 153
7.2.3 函式頭與函式體 158
7.2.4 函式返回值 159
7.2.5 函式聲明 160
7.3 函式參數 162
7.3.1 形參和實參 163
7.3.2 值傳遞 164
7.3.3 引用傳遞 164
7.3.4 指針傳遞 165
7.3.5 有預設參數的函式 166
7.3.6 內聯函式 168
7.4 函式的嵌套調用 170
7.4.1 函式的相互嵌套調用 170
7.4.2 函式的遞歸調用 171
7.5 函式的重載 174
7.5.1 什麼是函式重載 174
7.5.2 如何實現函式重載 175
7.6 函式變數 176
7.6.1 局部變數 176
7.6.2 全局變數 177
7.6.3 靜態局部變數 180
7.6.4 靜態全局變數 182
7.7 小結 183
7.8 習題 183
第8章 c++過程開發的進一步討論 186
8.1 c/c++重要的關鍵字 186
8.1.1 const關鍵字 186
8.1.2 static關鍵字 188
8.2 記憶體問題 192
8.2.1 記憶體泄漏 192
8.2.2 野指針 193
8.2.3 試圖修改常量 193
8.2.4 用錯sizeof 194
8.3 帶參的主函式 195
8.4 小結 196
8.5 習題 196
第三篇 c++面向對象開發
第9章 類和對象 197
9.1 面向對象程式設計概述 197
9.1.1 什麼是面向對象的程式設計 197
9.1.2 面向對象程式設計的特點 198
9.1.3 面向對象程式設計的優點 204
9.1.4 類的概念 206
9.2 類的聲明與定義 206
9.2.1 類聲明和類定義 206
9.2.2 類和結構體 207
9.3 類的成員變數 208
9.3.1 如何定義類的成員變數 208
9.3.2 類成員變數的賦值 209
9.4 類的成員函式 210
9.4.1 成員函式的聲明和實現 210
9.4.2 帶默認形參值的成員函式 210
9.4.3 內聯成員函式 211
9.5 const成員變數與成員函式 212
9.5.1 const成員變數 212
9.5.2 const成員函式 213
9.6 靜態成員變數與成員函式 214
9.6.1 靜態成員變數 214
9.6.2 靜態成員函式 215
9.7 小結 216
9.8 習題 216
第10章 類和對象的進一步討論 218
10.1 類的構造函式 218
10.1.1 構造函式的概念 218
10.1.2 含有參數的構造函式 220
10.1.3 構造函式的重載 221
10.1.4 構造函式允許按參數默認方式調用 222
10.1.5 用參數初始化表對數據成員初始化 224
10.2 類的析構函式 225
10.2.1 析構函式的概念 225
10.2.2 析構函式的作用 226
10.2.3 構造函式和析構函式的調用順序 227
10.3 複製構造函式 227
10.3.1 複製構造函式的概念與作用 228
10.3.2 如何定義複製構造函式 229
10.3.3 淺複製與深複製 230
10.3.4 複製構造函式的調用 232
10.4 類作用域和對象生存期 234
10.5 友元 236
10.5.1 友元函式 236
10.5.2 友元成員 238
10.5.3 友元類 240
10.6 對象指針 242
10.6.1 指向對象的指針 242
10.6.2 this指針 244
10.7 對象的動態建立和釋放 246
10.7.1 對象的創建 246
10.7.2 對象的釋放 247
10.7.3 malloc/free與new/delete的區別 248
10.8 小結 249
10.9 習題 250
第11章 運算符重載 251
11.1 運算符重載概要 251
11.2 運算符重載 252
11.2.1 單目運算符重載 252
11.2.2 雙目運算符重載 254
11.2.3 運算符“[ ]”的重載 257
11.2.4 運算符重載為友元函式 258
11.3 小結 260
11.4 習題 260
第12章 類的繼承 261
12.1 繼承與派生的概念 261
12.2 派生類的聲明方式 263
12.3 派生類成員的訪問許可權 264
12.3.1 公有繼承 264
12.3.2 私有繼承 265
12.3.3 保護繼承 266
12.4 派生類的構造函式和析構函式 267
12.4.1 派生類的構造函式 267
12.4.2 派生類的析構函式 269
12.5 虛基類 270
12.5.1 虛基類的概念 271
12.5.2 共同基類帶來的二義性 272
12.6 基類與派生類的相互轉換 272
12.7 小結 274
12.8 習題 274
第13章 多態與虛函式 276
13.1 多態與虛函式簡介 276
13.1.1 靜態聯編 276
13.1.2 動態聯編 278
13.1.3 虛函式概念 278
13.1.4 虛函式的聲明和定義 278
13.1.5 關於虛函式的幾點說明 280
13.1.6 虛函式的原理 281
13.2 虛函式的訪問 283
13.2.1 對象名訪問 283
13.2.2 基指針訪問 284
13.2.3 引用訪問 286
13.2.4 類內訪問 288
13.2.5 在構造函式或析構函式中訪問 289
13.3 純虛函式與抽象類 291
13.3.1 純虛函式的聲明和定義 291
13.3.2 抽象類 293
13.3.3 另一種抽象類:類中只定義了protected型的構造函式 294
13.3.4 虛析構函式 295
13.4 虛函式引入的二義性 297
13.4.1 多基派生的二義性 297
13.4.2 虛繼承 399
13.5 重載、覆蓋與隱藏 302
13.6 小結 304
13.7 習題 304
第四篇 c++泛型編程
第14章 模板 307
14.1 模板的概念 307
14.2 函式模板 308
14.2.1 函式模板的一般定義 308
14.2.2 顯式具體化 309
14.2.3 優先權與執行順序 312
14.3 類模板 313
14.3.1 類模板的一般定義 313
14.3.2 模板類的繼承 316
14.3.3 模板類的靜態數據成員 317
14.4 小結 319
14.5 習題 319
第15章 標準模板庫(stl) 320
15.1 stl概述 320
15.1.1 算法簡介 320
15.1.2 容器簡介 320
15.1.3 疊代器簡介 321
15.1.4 適配器簡介 321
15.2 容器 322
15.2.1 向量 322
15.2.2 列表 323
15.3 疊代器 325
15.3.1 輸入和輸出疊代器 325
15.3.2 前向疊代器、雙向疊代器和隨機訪問疊代器 326
15.3.3 插入疊代器 327
15.3.4 混合疊代器函式 328
15.3.5 疊代器適配器 328
15.4 算法和函式對象 329
15.4.1 stl通用算法調用形式 329
15.4.2 不可變序列算法 331
15.4.3 可變序列算法 332
15.4.4 函式對象 332
15.5 小結 334
15.6 習題 334
第五篇 輸入/輸出處理和編程規範
第16章 輸入/輸出 335
16.1 輸入/輸出概述 335
16.1.1 流 336
16.1.2 緩衝區 336
16.1.3 3種輸入/輸出流 336
16.1.4 重定向 336
16.2 c語言i/o庫函式 337
16.2.1 標準輸出函式printf 337
16.2.2 標準輸入函式scanf 340
16.2.3 sprintf和sscanf函式 341
16.2.4 c語言的檔案訪問機制 345
16.3 流類庫 347
16.3.1 流類庫更安全、更高效 347
16.3.2 流類庫層次 348
16.4 c++輸入/輸出流 350
16.4.1 標準輸出流對象cout 350
16.4.2 其他輸出流對象 351
16.4.3 標準輸入流對象cin 352
16.4.4 使用格式控制符控制輸出格式 354
16.4.5 用流對象的成員函式控制輸出格式 356
16.4.6 用流成員函式put輸出字元 359
16.4.7 用於字元輸入的流成員函式 359
16.4.8 istream類的其他成員函式 362
16.5 重載“[[”和“]]” 365
16.6 c++檔案輸入/輸出流 366
16.6.1 檔案的輸出 367
16.6.2 檔案的輸入 368
16.7 小結 370
16.8 習題 370
第17章 檔案操作 372
17.1 檔案的概述 372
17.2 檔案的打開與關閉 372
17.2.1 檔案的打開 372
17.2.2 檔案的關閉 373
17.3 檔案的讀寫 374
17.3.1 c++檔案的讀寫方法 374
17.3.2 文本檔案的讀寫 375
17.3.3 檔案的定位 376
17.3.4 二進制檔案的讀寫 377
17.4 小結 378
17.5 習題 378
第18章 命名空間 379
18.1 什麼是命名空間 379
18.1.1 命名空間範例 379
18.1.2 定義命名空間 381
18.2 實體的作用域與可見域 382
18.2.1 局部作用域 382
18.2.2 全局作用域和域操作符 384
18.2.3 作用域嵌套及可見性 385
18.3 使用命名空間 386
18.3.1 作用域解析運算符 386
18.3.2 using指令 386
18.3.3 using指令與using聲明的比較 388
18.4 小結 389
18.5 習題 389
第19章 異常和錯誤處理 390
19.1 編碼時的防錯 390
19.1.1 使用斷言 390
19.1.2 調用exit、abort、_exit和atexit函式 392
19.1.3 返回錯誤標誌 396
19.2 異常機制 397
19.2.1 異常的拋出 399
19.2.2 異常的捕獲 402
19.2.3 異常的處理 404
19.2.4 terminate函式和set_terminate函式 405
19.2.5 unexpected函式與set_unexpected函式 407
19.2.6 標準異常 408
19.3 關於異常處理的進一步討論 410
19.3.1 異常規範 410
19.3.2 堆疊解退 411
19.3.3 構造函式、析構函式與異常處理 411
19.4 auto_ptr類 412
19.4.1 使用auto_ptr類 412
19.4.2 關於auto_ptr的使用說明 415
19.5 小結 415
19.6 習題 416

相關詞條

熱門詞條

聯絡我們