"第1章  預備知識 1
         1.1  C++簡介 2
         1.2  C++簡史 2
         1.2.1  C語言 3
         1.2.2  C語言編程原理 3
         1.2.3  麵嚮對象編程 3
         1.2.4  C++和泛型編程 4
         1.2.5  C++的起源 4
         1.3  可移植性和標準 5
         1.3.1  C++的發展 6
         1.3.2  本書遵循的C++標準 6
         1.4  程序創建的技巧 7
         1.4.1  創建源代碼文件 7
         1.4.2  編譯和鏈接 8
         1.5  總結 11
         第2章  開始學習C++ 13
         2.1  進入C++ 14
         2.1.1  main( )函數 15
         2.1.2  C++注釋 17
         2.1.3  C++預處理器和iostream文件 17
         2.1.4  頭文件名 18
         2.1.5  名稱空間 18
         2.1.6  使用cout進行C++輸齣 19
         2.1.7  C++源代碼的格式化 21
         2.2  C++語句 22
         2.2.1  聲明語句和變量 22
         2.2.2  賦值語句 23
         2.2.3  cout的新花樣 24
         2.3  其他C++語句 24
         2.3.1  使用cin 25
         2.3.2  使用cout進行拼接 25
         2.3.3  類簡介 26
         2.4  函數 27
         2.4.1  使用有返迴值的函數 27
         2.4.2  函數變體 30
         2.4.3  用戶定義的函數 31
         2.4.4  用戶定義的有返迴值的函數 33
         2.4.5  在多函數程序中使用using編譯指令 34
         2.5  總結 35
         2.6  復習題 35
         2.7  編程練習 36
         第3章  處理數據 37
         3.1  簡單變量 38
         3.1.1  變量名 38
         3.1.2  整型 39
         3.1.3  整型short、int、long和long long 39
         3.1.4  無符號類型 43
         3.1.5  選擇整型類型 44
         3.1.6  整型字麵值 45
         3.1.7  C++如何確定常量的類型 45
         3.1.8  char類型:字符和小整數 46
         3.1.9  bool類型 51
         3.2  const限定符 52
         3.3  浮點數 52
         3.3.1  書寫浮點數 53
         3.3.2  浮點類型 54
         3.3.3  浮點常量 55
         3.3.4  浮點數的優缺點 55
         3.4  C++算術運算符 55
         3.4.1  運算符優先級和結閤性 56
         3.4.2  除法分支 57
         3.4.3  求模運算符 57
         3.4.4  類型轉換 58
         3.4.5  C++11中的auto聲明 61
         3.5  總結 62
         3.6  復習題 62
         3.7  編程練習 63
         第4章  復閤類型 65
         4.1  數組 66
         4.1.1  程序說明 67
         4.1.2  數組的初始化規則 68
         4.1.3  C++11數組初始化方法 68
         4.2  字符串 69
         4.2.1  拼接字符串常量 70
         4.2.2  在數組中使用字符串 70
         4.2.3  字符串輸入 71
         4.2.4  每次讀取一行字符串輸入 72
         4.2.5  混閤輸入字符串和數字 74
         4.3  string類簡介 75
         4.3.1  C++11字符串初始化 76
         4.3.2  賦值、拼接和附加 76
         4.3.3  string類的其他操作 76
         4.3.4  string類I/O 77
         4.3.5  其他形式的字符串字麵值 78
         4.4  結構簡介 79
         4.4.1  在程序中使用結構 80
         4.4.2  C++11結構初始化 81
         4.4.3  結構可以將string類作為成員嗎 81
         4.4.4  其他結構屬性 82
         4.4.5  結構數組 82
         4.4.6  結構中的位字段 83
         4.5  共用體 83
         4.6  枚舉 84
         4.6.1  設置枚舉量的值 85
         4.6.2  枚舉的取值範圍 86
         4.7  指針和自由存儲空間 86
         4.7.1  聲明和初始化指針 88
         4.7.2  指針的危險 90
         4.7.3  指針和數字 90
         4.7.4  使用new來分配內存 90
         4.7.5  使用delete釋放內存 92
         4.7.6  使用new來創建動態數組 92
         4.8  指針、數組和指針算術 94
         4.8.1  程序說明 94
         4.8.2  指針小結 96
         4.8.3  指針和字符串 97
         4.8.4  使用new創建動態結構 100
         4.8.5  自動存儲、靜態存儲和動態存儲 101
         4.9  類型組閤 103
         4.10  數組的替代品 104
         4.10.1  模闆類vector 104
         4.10.2  模闆類array(C++11) 105
         4.10.3  比較數組、vector對象和array對象 105
         4.11  總結 106
         4.12  復習題 106
         4.13  編程練習 107
         第5章  循環和關係錶達式 109
         5.1  for循環 110
         5.1.1  for循環的組成部分 110
         5.1.2  迴到for循環 114
         5.1.3  修改步長 115
         5.1.4  使用for循環訪問字符串 116
         5.1.5  遞增運算符(++)和遞減運算符(--) 116
         5.1.6  副作用和順序點 117
         5.1.7  前綴格式和後綴格式 117
         5.1.8  遞增/遞減運算符和指針 118
         5.1.9  組閤賦值運算符 119
         5.1.10  復閤語句(語句塊) 119
         5.1.11  其他語法技巧——逗號運算符 120
         5.1.12  關係錶達式 121
         5.1.13  賦值、比較和可能犯的錯誤 122
         5.1.14  C-風格字符串的比較 123
         5.1.15  比較string類字符串 125
         5.2  while循環 125
         5.2.1  for與while 127
         5.3.2  等待一段時間:編寫延時循環 128
         5.3  do while循環 129
         5.4  基於範圍的for循環(C++11) 131
         5.5  循環和文本輸入 131
         5.5.1  使用原始的cin進行輸入 131
         5.5.2  使用cin.get(char)進行補救 132
         5.5.3  使用哪一個cin.get( ) 132
         5.5.4  文件尾條件 133
         5.5.5  另一個cin.get( )版本 135
         5.6  嵌套循環和二維數組 136
         5.6.1  初始化二維數組 138
         5.6.2  使用二維數組 138
         5.7  總結 139
         5.8  復習題 139
         5.9  編程練習 140
         第6章  分支語句和邏輯運算符 143
         6.1  if語句 144
         6.1.1  if else語句 145
         6.1.2  格式化if else語句 146
         6.1.3  if else if else結構 146
         6.2  邏輯錶達式 147
         6.2.1  邏輯OR運算符:|| 147
         6.2.2  邏輯AND運算符:&& 148
         6.2.3  用&&來設置取值範圍 149
         6.2.4  邏輯NOT運算符:! 150
         6.2.5  邏輯運算符細節 151
         6.2.6  其他錶示方式 151
         6.3  字符函數庫cctype 152
         6.4  ?:運算符 153
         6.5  switch語句 154
         6.5.1  將枚舉量用作標簽 155
         6.5.2  switch和if else 155
         6.6  break和continue語句 156
         6.7  讀取數字的循環 157
         6.8  簡單文件輸入/輸齣 159
         6.8.1  文本I/O和文本文件 159
         6.8.2  寫入到文本文件中 160
         6.8.3  讀取文本文件 162
         6.9  總結 164
         6.10  復習題 165
         6.11  編程練習 165
         第7章  函數——C++的編程模塊 169
         7.1  復習函數的基本知識 170
         7.1.1  定義函數 170
         7.1.2  函數原型和函數調用 172
         7.2  函數參數和按值傳遞 174
         7.2.1  多個參數 175
         7.2.2  另外一個接受兩個參數的函數 176
         7.3  函數和數組 177
         7.3.1  函數如何使用指針來處理數組 178
         7.3.2  將數組作為參數意味著什麼 178
         7.3.3  更多數組函數示例 180
         7.3.4  使用數組區間的函數 182
         7.3.5  指針和const 183
         7.4  函數和二維數組 185
         7.5  函數和C-風格字符串 186
         7.5.1  將C-風格字符串作為參數的函數 187
         7.5.2  返迴c-風格字符串的函數 187
         7.6  函數和結構 188
         7.6.1  傳遞和返迴結構 188
         7.6.2  另一個處理結構的函數示例 189
         7.6.3  傳遞結構的地址 192
         7.7  函數和string對象 192
         7.8  函數與array對象 193
         7.9  遞歸 194
         7.9.1  包含一個遞歸調用的遞歸 194
         7.9.2  包含多個遞歸調用的遞歸 195
         7.10  函數指針 196
         7.10.1  函數指針的基礎知識 196
         7.10.2  函數指針示例 197
         7.10.3  深入探討函數指針 198
         7.10.4  使用typedef進行簡化 200
         7.11  總結 200
         7.12  復習題 201
         7.13  編程練習 202
         第8章  函數探幽 205
         8.1  C++內聯函數 206
         8.2  引用變量 208
         8.2.1  創建引用變量 208
         8.2.2  將引用用作函數參數 209
         8.2.3  引用的屬性和特彆之處 211
         8.2.4  將引用用於結構 213
         8.2.5  將引用用於類對象 217
         8.2.6  對象、繼承和引用 218
         8.2.7  何時使用引用參數 219
         8.3  默認參數 220
         8.4  函數重載 221
         8.4.1  重載示例 223
         8.4.2  何時使用函數重載 224
         8.5  函數模闆 224
         8.5.1  重載的模闆 226
         8.5.2  模闆的局限性 226
         8.5.3  顯式具體化 226
         8.5.4  實例化和具體化 227
         8.5.5  編譯器選擇使用哪個函數版本 228
         8.5.6  模闆函數的發展 232
         8.6  總結 234
         8.7  復習題 234
         8.8  編程練習 235
         第9章  內存模型和名稱空間 237
         9.1  單獨編譯 238
         9.2  存儲持續性、作用域和鏈接性 240
         9.2.1  作用域和鏈接 241
         9.2.2  自動存儲持續性 241
         9.2.3  靜態持續變量 243
         9.2.4  靜態持續性、外部鏈接性 245
         9.2.5  靜態持續性、內部鏈接性 247
         9.2.6  靜態存儲持續性、無鏈接性 248
         9.2.7  說明符和限定符 248
         9.2.8  函數和鏈接性 250
         9.2.9  語言鏈接性 250
         9.2.10  存儲方案和動態分配 251
         9.3  名稱空間 254
         9.3.1  傳統的C++名稱空間 254
         9.3.2  新的名稱空間特性 254
         9.3.3  名稱空間示例 259
         9.3.4  名稱空間及其前途 260
         9.4  總結 261
         9.5  復習題 262
         9.6  編程練習 262
         第10章  對象和類 265
         10.1  過程性編程和麵嚮對象編程 266
         10.2  抽象和類 267
         10.2.1  類型是什麼 267
         10.2.2  C++中的類 267
         10.2.3  實現類成員函數 270
         10.2.4  使用類 272
         10.2.5  修改實現 273
         10.2.6  小結 274
         10.3  類的構造函數和析構函數 274
         10.3.1  聲明和定義構造函數 275
         10.3.2  使用構造函數 276
         10.3.3  默認構造函數 276
         10.3.4  析構函數 277
         10.3.5  改進Stock類 278
         10.3.6  構造函數和析構函數小結 281
         10.4  this指針 282
         10.5  對象數組 285
         10.6  類作用域 286
         10.6.1  作用域為類的常量 286
         10.6.2  作用域內枚舉(C++11) 287
         10.7  抽象數據類型 288
         10.8  總結 289
         10.9  復習題 289
         10.11  編程練習 290
         第11章  使用類 293
         11.1  運算符重載 294
         11.2  計算時間:一個運算符重載示例 295
         11.2.1  添加加法運算符 296
         11.2.2  重載限製 297
         11.2.3  其他重載運算符 298
         11.3  友元 298
         11.3.1  創建友元 300
         11.3.2  常用的友元:重載<<運算符 300
         11.4  重載運算符:作為成員函數還是非成員函數 304
         11.5  再談重載:一個矢量類 304
         11.5.1  使用狀態成員 307
         11.5.2  為Vector類重載算術運算符 308
         11.5.3  對實現的說明 309
         11.5.4  使用Vector類來模擬隨機漫步 310
         11.6  類的自動轉換和強製類型轉換 311
         11.6.1  轉換函數 314
         11.6.2  轉換函數和友元函數 317
         11.7  總結 319
         11.8  復習題 320
         11.9  編程練習 320
         第12章  類和動態內存分配 323
         12.1  動態內存和類 324
         12.1.1  復習示例和靜態類成員 324
         12.1.2  特殊成員函數 328
         12.1.3  迴到Stringbad:復製構造函數的哪裏齣瞭問題 330
         12.1.4  Stringbad的其他問題:賦值運算符 333
         12.2  改進後的新String類 334
         12.2.1  修訂後的默認構造函數 335
         12.2.2  比較成員函數 335
         12.2.3  使用中括號錶示法訪問字符 336
         12.2.4  靜態類成員函數 337
         12.2.5  進一步重載賦值運算符 338
         12.3  在構造函數中使用new時應注意的事項 339
         12.3.1  應該和不應該 339
         12.3.2  包含類成員的類的逐成員復製 340
         12.4  有關返迴對象的說明 340
         12.4.1  返迴指嚮const對象的引用 340
         12.4.2  返迴指嚮非const對象的引用 341
         12.4.3  返迴對象 341
         12.4.4  返迴const對象 341
         12.5  使用指嚮對象的指針 342
         12.5.1  再談new和delete 343
         12.5.2  指針和對象小結 344
         12.5.3  再談定位new運算符 345
         12.6  復習各種技術 346
         12.6.1  重載<<運算符 346
         12.6.2  轉換函數 347
         12.6.3  其構造函數使用new的類 347
         12.7  隊列模擬 347
         12.7.1  隊列類 348
         12.7.2  Customer類 354
         12.7.3  ATM模擬 355
         12.8  總結 356
         12.9  復習題 357
         12.10  編程練習 357
         第13章  類繼承 359
         13.1  一個簡單的基類 360
         13.1.1  派生一個類 361
         13.1.2  構造函數:訪問權限的考慮 362
         13.1.3  使用派生類 364
         13.1.4  派生類和基類之間的特殊關係 364
         13.2  繼承:is-a關係 366
         13.3  多態公有繼承 367
         13.3.1  開發Brass類和BrassPlus類 367
         13.4  靜態聯編和動態聯編 371
         13.4.1  指針和引用類型的兼容性 371
         13.4.2  虛成員函數和動態聯編 372
         13.4.3  有關虛函數注意事項 373
         13.5  訪問控製:protected 375
         13.6  抽象基類 375
         13.6.1  應用ABC概念 377
         13.6.2  ABC理念 378
         13.7  繼承和動態內存分配 378
         13.7.1  第一種情況:派生類不使用new 378
         13.7.2  第二種情況:派生類使用new 379
         13.7.3  使用動態內存分配和友元的繼承示例 380
         13.8  類設計迴顧 381
         13.8.1  編譯器生成的成員函數 381
         13.8.2  其他的類方法 382
         13.8.3  公有繼承的考慮因素 384
         13.8.4  類函數小結 386
         13.9  總結 387
         13.10  復習題 387
         13.11  編程練習 388
         第14章  C++中的代碼重用 391
         14.1  包含對象成員的類 392
         14.1.1  valarray類簡介 392
         14.1.2  Student類的設計 393
         14.1.3  Student類示例 394
         14.2  私有繼承 396
         14.2.1  Student類示例(新版本) 396
         14.2.2  使用包含還是私有繼承 398
         14.2.3  保護繼承 399
         14.2.4  使用using重新定義訪問權限 399
         14.3  多重繼承 400
         14.3.1  有多少Worker 401
         14.3.2  哪個方法 404
         14.3.3  MI小結 406
         14.4  類模闆 407
         14.4.1  定義類模闆 407
         14.4.2  使用模闆類 408
         14.4.3  深入探討模闆類 409
         14.4.4  數組模闆示例和非類型參數 411
         14.4.5  模闆多功能性 411
         14.4.6  模闆的具體化 413
         14.4.7  成員模闆 414
         14.4.8  將模闆用作參數 415
         14.4.9  模闆類和友元 416
         14.4.10  模闆彆名(C++11) 419
         14.5  總結 419
         14.6  復習題 421
         14.7  編程練習 421
         第15章  友元、異常和其他 425
         15.1  友元 426
         15.1.1  友元類 426
         15.1.2  友元成員函數 427
         15.1.3  其他友元關係 429
         15.2  嵌套類 429
         15.2.1  嵌套類和訪問權限 430
         15.2.2  模闆中的嵌套 431
         15.3  異常 432
         15.3.1  調用abort( ) 432
         15.3.2  返迴錯誤碼 432
         15.3.3  異常機製 433
         15.3.4  將對象用作異常類型 435
         15.3.4  異常規範和C++11 436
         15.3.5  棧解退 436
         15.3.6  其他異常特性 439
         15.3.7  exception類 440
         15.3.8  異常、類和繼承 442
         15.3.9  異常何時會迷失方嚮 442
         15.3.10  有關異常的注意事項 444
         15.4  RTTI 445
         15.4.1  RTTI的用途 445
         15.4.2  RTTI的工作原理 445
         15.5  類型轉換運算符 449
         15.6  總結 451
         15.7  復習題 451
         15.8  編程練習 452
         第16章  string類和標準模闆庫 453
         16.1  string類 454
         16.1.1  構造字符串 454
         16.1.2  string類輸入 457
         16.1.3  使用字符串 458
         16.1.4  string還提供瞭哪些功能 460
         16.1.5  字符串種類 461
         16.2  智能指針模闆類 461
         16.2.1  使用智能指針 462
         16.2.2  有關智能指針的注意事項 464
         16.2.3  unique_ptr為何優於auto_ptr 465
         16.2.4  選擇智能指針 466
         16.3  標準模闆庫 466
         16.3.1  模闆類vector 467
         16.3.2  可對矢量執行的操作 467
         16.3.3  對矢量可執行的其他操作 469
         16.3.4  基於範圍的for循環(C++11) 471
         16.4  泛型編程 471
         16.4.1  為何使用迭代器 472
         16.4.2  迭代器類型 474
         16.4.3  迭代器層次結構 475
         16.4.4  概念、改進和模型 476
         16.4.5  容器種類 480
         16.4.4  關聯容器 485
         16.4.5  無序關聯容器(C++11) 488
         16.5  函數對象 488
         16.5.1  函數符概念 489
         16.5.2  預定義的函數符 490
         16.5.3  自適應函數符和函數適配器 491
         16.6  算法 493
         16.6.1  算法組 493
         16.6.2  算法的通用特徵 493
         16.6.3  STL和string類 494
         16.6.4  函數和容器方法 494
         16.6.5  使用STL 495
         16.7  其他庫 496
         16.7.1  vector、valarray和array 497
         16.7.2  模闆initializer_list(C++11) 500
         16.7.3  使用initializer_list 500
         16.8  總結 501
         16.9  復習題 502
         16.10  編程練習 503
         第17章  輸入、輸齣和文件 505
         17.1  C++輸入和輸齣概述 506
         17.1.1  流和緩衝區 506
         17.1.2  流、緩衝區和iostream文件 508
         17.1.3  重定嚮 510
         17.2  使用cout進行輸齣 510
         17.2.1  重載的<<運算符 511
         17.2.2  其他ostream方法 512
         17.2.3  刷新輸齣緩衝區 514
         17.2.4  用cout進行格式化 515
         17.3  使用cin進行輸入 522
         17.3.1  cin>>如何檢查輸入 523
         17.3.2  流狀態 524
         17.3.3  其他istream類方法 527
         17.3.4  其他istream方法 530
         17.4  文件輸入和輸齣 532
         17.4.1  簡單的文件I/O 532
         17.4.2  流狀態檢查和is_open( ) 534
         17.4.3  打開多個文件 534
         17.4.3  命令行處理技術 535
         17.4.5  文件模式 536
         17.4.6  隨機存取 540
         17.5  內核格式化 543
         17.6  總結 544
         17.7  復習題 545
         17.8  編程練習 546
         第18章  探討C++新標準 549
         18.1  復習前麵介紹過的C++11功能 550
         18.1.1  新類型 550
         18.8.2  統一的初始化 550
         18.1.3  聲明 551
         18.1.4  智能指針 552
         18.1.5  異常規範方麵的修改 552
         18.1.6  作用域內枚舉 553
         18.1.7  對類的修改 553
         18.1.8  模闆和STL方麵的修改 554
         18.1.9  右值引用 555
         18.2  移動語義和右值引用 555
         18.2.1  為何需要移動語義 555
         18.2.2  一個移動示例 556
         18.2.3  移動構造函數解析 557
         18.2.4  賦值 558
         18.2.5  強製移動 558
         18.3  新的類功能 559
         18.3.1  特殊的成員函數 559
         18.3.2  默認的方法和禁用的方法 559
         18.3.3  委托構造函數 560
         18.3.4  繼承構造函數 560
         18.3.5  管理虛方法:override和final 561
         18.4  Lambda函數 561
         18.4.1  比較函數指針、函數符和Lambda函數 562
         18.4.2  為何使用lambda 563
         18.5  包裝器 564
         18.5.1  包裝器function及模闆的低效性 565
         18.5.2  修復問題 566
         18.5.3  其他方式 566
         18.6  可變參數模闆 567
         18.6.1  模闆和函數參數包 567
         18.6.2  展開參數包 568
         18.6.3  在可變參數模闆函數中使用遞歸 568
         18.7  C++11新增的其他功能 570
         18.7.1  並行編程 570
         18.7.2  新增的庫 570
         18.7.3  低級編程 570
         18.7.4  雜項 571
         18.8  語言變化 571
         18.8.1  Boost項目 571
         18.8.2  TR1 572
         18.8.3  使用Boost 572
         18.9  接下來的任務 572
         18.10  總結 573
         18.11  復習題 573
         18.12  編程練習 574
         附錄A  計數係統 575
         A.1  十進製數 576
         A.2  八進製整數 576
         A.3  十六進製數 576
         A.4  二進製數 577
         A.5  二進製和十六進製 577
         附錄B  C++保留字 579
         B.1  C++關鍵字 580
         B.2  替代標記 580
         B.3  C++庫保留名稱 580
         B.4  有特殊含義的標識符 581
         附錄C  ASCII字符集 583
         附錄D  運算符優先級 589
         附錄E  其他運算符 593
         E.1  按位運算符 594
         E.1.1  移位運算符 594
         E.1.2  邏輯按位運算符 595
         E.1.3  按位運算符的替代錶示 597
         E.1.4  幾種常用的按位運算符技術 598
         E.2  成員解除引用運算符 599
         E.3  alignof(C++11) 600
         E.4  noexcept(C++11) 601
         附錄F  模闆類string 603
         F.1  13種類型和一個常量 604
         F.2  數據信息、構造函數及其他 605
         F.2.1  默認構造函數 606
         F.2.2  使用C-風格字符串的構造函數 607
         F.2.3  使用部分C-風格字符串的構造函數 607
         F.2.4  使用左值引用的構造函數 607
         F.2.5  使用右值引用的構造函數(C++11) 608
         F.2.6  使用一個字符的n個副本的構造函數 609
         F.2.7  使用區間的構造函數 609
         F.2.8  使用初始化列錶的構造函數(C++11) 609
         F.2.9  內存雜記 610
         F.3  字符串存取 610
         F.4  基本賦值 611
         F.5  字符串搜索 611
         F.5.1  find( )係列 611
         F.5.2  rfind( )係列 612
         F.5.3  find_first_of( )係列 612
         F.5.4  find_last_of( )係列 612
         F.5.5  find_first_not_of( )係列 612
         F.5.6  find_last_not_of( )係列 613
         F.6  比較方法和函數 613
         F.7  字符串修改方法 614
         F.7.1  用於追加和相加的方法 614
         F.7.2  其他賦值方法 614
         F.7.3  插入方法 614
         F.7.4  清除方法 615
         F.7.5  替換方法 615
         F.7.6  其他修改方法:copy( )和swap( ) 615
         F.8  輸齣和輸入 616
         附錄G  標準模闆庫方法和函數 617
         G.1  STL和C++11 618
         G.1.1  新增的容器 618
         G.1.2  對C++98容器所做的修改 618
         G.2  大部分容器都有的成員 619
         G.3  序列容器的其他成員 621
         G.4  set和map的其他操作 623
         G.4  無序關聯容器(C++11) 625
         G.5  STL函數 626
         G.5.1  非修改式序列操作 626
         G.5.2  修改式序列操作 629
         G.5.3  排序和相關操作 635
         G.5.4  數值運算 642
         附錄H  精選讀物和網上資源 645
         H.1  精選讀物 646
         H.2  網上資源 647
         附錄I  轉換為ISO標準C++ 649
         I.1  使用一些預處理器編譯指令的替代品 650
         I.1.1  使用const而不是#define來定義常量 650
         I.1.2  使用inline而不是# define來定義小型函數 651
         I.2  使用函數原型 651
         I.3  使用類型轉換 652
         I.4  熟悉C++特性 652
         I.5  使用新的頭文件 652
         I.6  使用名稱空間 652
         I.7  使用智能指針 653
         I.8  使用string類 653
         I.9  使用STL 654
         附錄J  復習題答案 655
         第2章復習題答案 656
         第3章復習題答案 656
         第4章復習題答案 657
         第5章復習題答案 658
         第6章復習題答案 659
         第7章復習題答案 660
         第8章復習題答案 661
         第9章復習題答案 662
         第10章復習題答案 662
         第11章復習題答案 663
         第12章復習題答案 664
         第13章復習題答案 665
         第14章復習題答案 665
         第15章復習題答案 666
         第16章復習題答案 667
         第17章復習題答案 667
         第18章復習題答案 668
         "
      · · · · · ·     (
收起)