C++編程自學寶典

C++編程自學寶典

《C++編程自學寶典》是2020年2月人民郵電出版社出版的圖書,作者是[英]理察·格里姆斯(Richard Grimes)。

基本介紹

  • 中文名:C++編程自學寶典
  • 作者:[英]理察·格里姆斯(Richard Grimes)
  • ISBN:9787115492401
  • 頁數:337頁
  • 定價:69元
  • 出版社:人民郵電出版社
  • 出版時間:2020年2月
  • 裝幀:平裝
  • 開本:16開
內容簡介,圖書目錄,

內容簡介

作為一門廣為人知的程式語言,C++已經誕生30多年了,這期間也出現並流行過許多種程式語言,但是C++是經得起考驗的。如此經典的程式語言,值得每一位拒只漏編程領域的新人認真學習,也適合有經驗的程式設計師細細品味。
本書旨在通過全面細緻的內容和代碼示例,帶領讀者更加全方位地認識C++語言。全書分為10章,由淺入深地介紹了C++的各項特性,包括C++語法、數據類型、指針、函式、類、面辯燥向對象特性、標準庫容器、字元串、診斷和調試等。本書涵蓋了C++11規範及相關的C++11標準庫,是全面學習C++編程的合適之選。
本書適合C++零基礎讀者,但是希望讀者有一些編程經訂說享驗。通過書中豐富、典型的代碼示例,讀者將快速把握C++的特性和編程技巧。

圖書目錄

第1章 初識C++ 1
1.1 本章的主要內容 1
1.2 C++是什麼 1
1.3 安裝Visual C++ 2
1.3.1 安裝配置 2
1.3.2 下載安裝檔案 2
1.3.3 安裝Visual Studio 3
1.3.4 註冊Microsoft賬號 5
1.4 C++項目結構簡介 6
1.4.1 編譯器 6
1.4.2 連結代碼 7
1.4.3 源檔案 8
1.4.4 預處理器和標識符 14
1.4.5 依賴項 18
1.5 編寫一個簡單的項目程式 22
1.5.1 項目結構 22
1.5.2 創建預編譯頭檔案 22
1.5.3 創建主檔案 23
1.5.4 輸入和輸出流 24
1.5.5 time函式 25
1.5.6 構建執行檔 26
1.5.7 測試代碼 27
1.5.8 修改項目 27
1.6 小結 27
第 2章 語言特性簡介 28
2.1 編寫C++代碼 28
2.1.1 空格 28
2.1.2 格式化代碼 29
2.1.3 編寫照驗民戀語句 30
2.1.4 類型和變數 32
2.1.5 常量和文字 33
2.1.6 命名空間謎微霉芝 37
2.1.7 C++的變數作用域 40
2.2 運算符 42
2.3 執行流控制 49
2.3.1 條件語句 49
2.3.2 選擇 51
2.3.3 循環 53
2.3.4 跳轉 57
2.4 C++語言特性套用 58
2.5 小結 62
第3章 C++類型探秘 63
3.1 內置類型 63
3.1.1 整數類型 64
3.1.2 浮點類型 68
3.1.3 字元和字元串 69
3.1.4 布爾類型 75
3.1.5 void 75
3.1.6 初始化器 76
3.1.7 默認值 77
3.1.8 無類型的變數聲明 78
3.1.9 存儲類 80
3.1.10 類型別名 81
3.1.11 記錄類型中的聚合數據 82
3.1.12 訪問運行時類型信息 88
3.1.13 類型取值範圍 89
3.2 類型之間的轉換 89
3.2.1 類型轉換 89
3.2.2 轉型 91
3.3 C++類型套用 94
3.4 小結 101
第4章 記憶體、數組和指針 102
4.1 C++中的使用記憶體 102
4.1.1 C++指針語法 102
4.1.2 空指針 104
4.1.3 記憶體類型 104
4.1.4 指針算術 106
4.2 數組 107
4.2.1 函式參數 108
4.2.2 多維數組 109
4.2.3 將多維數組傳遞給
函式 110
4.2.4 字元數組 111
4.3 在C++中使用指針 113
4.3.1 訪問越界 113
4.3.2 指針記憶體釋放 113
4.3.3 指針轉型 114
4.4 在代碼中分配記憶體 115
4.4.1 分配單個對象 116
4.4.2 分配對象數組 116
4.4.3 處理記憶體分配異常 117
4.4.4 new運算符的其連放船他版本 117
4.4.5 記憶體的生命周期 118
4.4.6 Windows SDK和指針 118
4.5 記憶體與C++標準庫 120
4.6 引用 122
4.6.1 常量引用 123
4.6.2 返回引用 123
4.6.3 臨時引用 124
4.6.4 右值引用 125
4.6.5 for循環區間和引用 127
4.7 指針實戰 128
4.7.1 創建項目 129
4.7.2 將task對象添加到列表 130
4.7.3 刪除任務列表 131
4.7.4 遍歷任務列表 132
4.7.5 插入元素 133
4.8 小結 135
第5章 函式 136
5.1 定義C++函式 136
5.1.1 聲明和定義函式 136
5.1.2 聲明連結 137
5.1.3 內聯化 137
5.1.4 確定返回類芝恥愉型 138
5.1.5 函式命名 138
5.1.6 函式參數 138
5.1.7 聲明異常 139
5.1.8 函式體 139
5.2 函式參數 139
5.2.1 傳遞初始化器列表 140
5.2.2 默認參數 140
5.2.3 可變參數 141
5.3 函式特性 144
5.3.1 堆疊調用 144
5.3.2 聲明調用規範 144
5.3.3 遞歸 145
5.3.4 函式重載 146
5.3.5 函式和作用域 146
5.3.6 刪除函式 146
5.3.7 值傳遞和引用傳遞 147
5.4 函式設計 148
5.4.1 前置條件和後置條件 148
5.4.2 不變數 149
5.5 函式指針 150
5.5.1 留意括弧 150
5.5.2 聲明函式指針 150
5.5.3 函式指針用法 151
5.6 模板函式 152
5.6.1 定義模板 153
5.6.2 模板參數值 155
5.6.3 專一化模板 157
5.6.4 可變參數模板 157
5.7 運算符重載 159
5.7.1 函式對象 161
5.7.2 lambda表達式簡介 163
5.8 函式在C++中的套用 164
5.9 小結 169
第6章 類 170
6.1 編寫類 170
6.1.1 重新審視結構體 170
6.1.2 定義類 171
6.1.3 定義類的行為 171
6.1.4 創建對象 174
6.1.5 聲明靜態成員 181
6.1.6 嵌套類 184
6.1.7 訪問常量對象 184
6.2 對象和指針 185
6.2.1 指向對象成員的指針 185
6.2.2 運算符重載 186
6.2.3 定義函式類 188
6.2.4 定義轉換運算符 191
6.2.5 資源管理 192
6.2.6 編寫包裝器類 192
6.2.7 智慧型指針 193
6.3 模板 198
6.4 類的套用 200
6.5 小結 203
第7章 面向對象編程簡介 204
7.1 繼承和組合 204
7.1.1 從一個類繼承 204
7.1.2 方法重載和名稱隱藏 206
7.1.3 指針和引用 208
7.1.4 訪問層級 209
7.1.5 繼承訪問層級 211
7.1.6 多繼承 211
7.2 多態簡介 214
7.2.1 虛方法 215
7.2.2 虛方法表 217
7.2.3 多繼承和虛方法表 218
7.2.4 虛方法、構造函式和析構函式 219
7.2.5 容器和虛方法 219
7.2.6 友元和繼承 220
7.2.7 重載和關鍵字final 221
7.2.8 虛擬繼承 222
7.2.9 抽象類 222
7.2.10 獲取類型信息 224
7.2.11 智慧型指針和虛方法 226
7.2.12 接口 228
7.2.13 類之間的關係 230
7.2.14 mixin類 231
7.3 多態套用 233
7.4 小結 244
第8章 標準庫容器 245
8.1 pair和tuple 245
8.2 容器 247
8.2.1 順序容器 248
8.2.2 關聯容器 252
8.2.3 專用容器 255
8.2.4 疊代器 256
8.3 算法 261
8.3.1 元素疊代 261
8.3.2 獲取信息 263
8.3.3 容器比較 263
8.3.4 修改元素 264
8.3.5 查找元素 266
8.3.6 元素排序 267
8.4 數值庫 268
8.4.1 編譯期運算 268
8.4.2 複數 270
8.5 標準庫套用 271
8.6 小結 276
第9章 字元串 277
9.1 把字元串類當作容器 277
9.1.1 獲取字元串信息 278
9.1.2 修改字元串 278
9.1.3 搜尋字元串 279
9.2 國際化 281
9.3 字元串和數字 284
9.3.1 將字元串轉換成數字 284
9.3.2 將數字轉換成字元串 284
9.4 stream類 285
9.4.1 輸出浮點數 285
9.4.2 輸出整數 287
9.4.3 輸出時間和貨幣 288
9.4.4 使用stream將數字轉換為字元串 289
9.4.5 使用stream從字元串讀取數字 290
9.5 正則表達式 292
9.5.1 正則表達式定義 292
9.5.2 標準庫類 294
9.6 字元串套用 298
9.6.1 創建項目 299
9.6.2 處理標題子元素 303
9.7 小結 305
第 10章 診斷和調試 306
10.1 準備工作 306
10.1.1 不變性和條件編譯 306
10.1.2 條件編譯 307
10.1.3 pragma指令 308
10.1.4 添加通知訊息 309
10.1.5 調試程式的編譯器開關 311
10.1.6 預處理器標識符 312
10.1.7 生成診斷信息 314
10.1.8 斷言 318
10.2 應用程式終止 319
10.3 異常值 320
10.3.1 獲取描述信息 321
10.3.2 訊息編譯器 322
10.4 C++的異常 323
10.4.1 異常規範 323
10.4.2 C++異常語法 323
10.4.3 標準exception類 325
10.4.4 根據類型捕獲異常 326
10.4.5 函式中的try語句塊 328
10.4.6 系統異常 329
10.4.7 異常嵌套 330
10.4.9 編譯器異常開關 334
10.4.10 C++和SEH混合異常處理 334
10.4.11 編寫異常安全的類 336
10.5 小結 337
3.1.6 初始化器 76
3.1.7 默認值 77
3.1.8 無類型的變數聲明 78
3.1.9 存儲類 80
3.1.10 類型別名 81
3.1.11 記錄類型中的聚合數據 82
3.1.12 訪問運行時類型信息 88
3.1.13 類型取值範圍 89
3.2 類型之間的轉換 89
3.2.1 類型轉換 89
3.2.2 轉型 91
3.3 C++類型套用 94
3.4 小結 101
第4章 記憶體、數組和指針 102
4.1 C++中的使用記憶體 102
4.1.1 C++指針語法 102
4.1.2 空指針 104
4.1.3 記憶體類型 104
4.1.4 指針算術 106
4.2 數組 107
4.2.1 函式參數 108
4.2.2 多維數組 109
4.2.3 將多維數組傳遞給
函式 110
4.2.4 字元數組 111
4.3 在C++中使用指針 113
4.3.1 訪問越界 113
4.3.2 指針記憶體釋放 113
4.3.3 指針轉型 114
4.4 在代碼中分配記憶體 115
4.4.1 分配單個對象 116
4.4.2 分配對象數組 116
4.4.3 處理記憶體分配異常 117
4.4.4 new運算符的其他版本 117
4.4.5 記憶體的生命周期 118
4.4.6 Windows SDK和指針 118
4.5 記憶體與C++標準庫 120
4.6 引用 122
4.6.1 常量引用 123
4.6.2 返回引用 123
4.6.3 臨時引用 124
4.6.4 右值引用 125
4.6.5 for循環區間和引用 127
4.7 指針實戰 128
4.7.1 創建項目 129
4.7.2 將task對象添加到列表 130
4.7.3 刪除任務列表 131
4.7.4 遍歷任務列表 132
4.7.5 插入元素 133
4.8 小結 135
第5章 函式 136
5.1 定義C++函式 136
5.1.1 聲明和定義函式 136
5.1.2 聲明連結 137
5.1.3 內聯化 137
5.1.4 確定返回類型 138
5.1.5 函式命名 138
5.1.6 函式參數 138
5.1.7 聲明異常 139
5.1.8 函式體 139
5.2 函式參數 139
5.2.1 傳遞初始化器列表 140
5.2.2 默認參數 140
5.2.3 可變參數 141
5.3 函式特性 144
5.3.1 堆疊調用 144
5.3.2 聲明調用規範 144
5.3.3 遞歸 145
5.3.4 函式重載 146
5.3.5 函式和作用域 146
5.3.6 刪除函式 146
5.3.7 值傳遞和引用傳遞 147
5.4 函式設計 148
5.4.1 前置條件和後置條件 148
5.4.2 不變數 149
5.5 函式指針 150
5.5.1 留意括弧 150
5.5.2 聲明函式指針 150
5.5.3 函式指針用法 151
5.6 模板函式 152
5.6.1 定義模板 153
5.6.2 模板參數值 155
5.6.3 專一化模板 157
5.6.4 可變參數模板 157
5.7 運算符重載 159
5.7.1 函式對象 161
5.7.2 lambda表達式簡介 163
5.8 函式在C++中的套用 164
5.9 小結 169
第6章 類 170
6.1 編寫類 170
6.1.1 重新審視結構體 170
6.1.2 定義類 171
6.1.3 定義類的行為 171
6.1.4 創建對象 174
6.1.5 聲明靜態成員 181
6.1.6 嵌套類 184
6.1.7 訪問常量對象 184
6.2 對象和指針 185
6.2.1 指向對象成員的指針 185
6.2.2 運算符重載 186
6.2.3 定義函式類 188
6.2.4 定義轉換運算符 191
6.2.5 資源管理 192
6.2.6 編寫包裝器類 192
6.2.7 智慧型指針 193
6.3 模板 198
6.4 類的套用 200
6.5 小結 203
第7章 面向對象編程簡介 204
7.1 繼承和組合 204
7.1.1 從一個類繼承 204
7.1.2 方法重載和名稱隱藏 206
7.1.3 指針和引用 208
7.1.4 訪問層級 209
7.1.5 繼承訪問層級 211
7.1.6 多繼承 211
7.2 多態簡介 214
7.2.1 虛方法 215
7.2.2 虛方法表 217
7.2.3 多繼承和虛方法表 218
7.2.4 虛方法、構造函式和析構函式 219
7.2.5 容器和虛方法 219
7.2.6 友元和繼承 220
7.2.7 重載和關鍵字final 221
7.2.8 虛擬繼承 222
7.2.9 抽象類 222
7.2.10 獲取類型信息 224
7.2.11 智慧型指針和虛方法 226
7.2.12 接口 228
7.2.13 類之間的關係 230
7.2.14 mixin類 231
7.3 多態套用 233
7.4 小結 244
第8章 標準庫容器 245
8.1 pair和tuple 245
8.2 容器 247
8.2.1 順序容器 248
8.2.2 關聯容器 252
8.2.3 專用容器 255
8.2.4 疊代器 256
8.3 算法 261
8.3.1 元素疊代 261
8.3.2 獲取信息 263
8.3.3 容器比較 263
8.3.4 修改元素 264
8.3.5 查找元素 266
8.3.6 元素排序 267
8.4 數值庫 268
8.4.1 編譯期運算 268
8.4.2 複數 270
8.5 標準庫套用 271
8.6 小結 276
第9章 字元串 277
9.1 把字元串類當作容器 277
9.1.1 獲取字元串信息 278
9.1.2 修改字元串 278
9.1.3 搜尋字元串 279
9.2 國際化 281
9.3 字元串和數字 284
9.3.1 將字元串轉換成數字 284
9.3.2 將數字轉換成字元串 284
9.4 stream類 285
9.4.1 輸出浮點數 285
9.4.2 輸出整數 287
9.4.3 輸出時間和貨幣 288
9.4.4 使用stream將數字轉換為字元串 289
9.4.5 使用stream從字元串讀取數字 290
9.5 正則表達式 292
9.5.1 正則表達式定義 292
9.5.2 標準庫類 294
9.6 字元串套用 298
9.6.1 創建項目 299
9.6.2 處理標題子元素 303
9.7 小結 305
第 10章 診斷和調試 306
10.1 準備工作 306
10.1.1 不變性和條件編譯 306
10.1.2 條件編譯 307
10.1.3 pragma指令 308
10.1.4 添加通知訊息 309
10.1.5 調試程式的編譯器開關 311
10.1.6 預處理器標識符 312
10.1.7 生成診斷信息 314
10.1.8 斷言 318
10.2 應用程式終止 319
10.3 異常值 320
10.3.1 獲取描述信息 321
10.3.2 訊息編譯器 322
10.4 C++的異常 323
10.4.1 異常規範 323
10.4.2 C++異常語法 323
10.4.3 標準exception類 325
10.4.4 根據類型捕獲異常 326
10.4.5 函式中的try語句塊 328
10.4.6 系統異常 329
10.4.7 異常嵌套 330
10.4.9 編譯器異常開關 334
10.4.10 C++和SEH混合異常處理 334
10.4.11 編寫異常安全的類 336
10.5 小結 337

相關詞條

熱門詞條

聯絡我們