TOP
0
0
三民出版.新書搶先報|最速、最優惠的新鮮貨報給你知!
Boost程序庫完全開發指南:深入C++“準”標準庫(簡體書)
滿額折

Boost程序庫完全開發指南:深入C++“準”標準庫(簡體書)

商品資訊

人民幣定價:79 元
定價
:NT$ 474 元
優惠價
87412
缺貨無法訂購
商品簡介
作者簡介
目次
相關商品

商品簡介

《Boost程序庫完全開發指南:深入C++準標準庫》內容簡介:Boost是一個功能強大、構造精巧、跨平臺、開源并且完全免費的C++程序庫,有著“C++‘準’標準庫”的美譽。
它由C++標準委員會部分成員所設立的Boost社區開發并維護,使用了許多現代C++編程技術,內容涵蓋字符串處理、正則表達式、容器與數據結構、并發編程、函數式編程、泛型編程、設計模式實現等許多領域,極大地豐富了C++的功能和表現力,能夠使C++軟件開發更加簡潔、優雅、靈活和高效。
《Boost程序庫完全開發指南:深入C++準標準庫》基於Boost1.42版,介紹了其中的所有99個庫,并且詳細深入地講解了其中數十個庫,同時實現了若干頗具實用價值的工具類和函數,可幫助讀者迅速理解掌握Boost的用法以及在實際應用開發工作中。
《Boost程序庫完全開發指南:深入C++準標準庫》內容豐富、結構嚴謹、詳略得當、講解透徹,帶領讀者領略了C++的最新前沿技術,相信會是每位C++程序員的必備工具書。

作者簡介

羅劍鋒(網名Chrono),1996年就讀于東北財經大學,1997年開始接觸C/C++。1998年參加全國計算機等級考試,獲高級程序員資質。2003年畢業于北京理工大學,獲計算機專業碩士學位。目前供職于某部委下屬軟件公司,任項目經理,主要研究方向為C/C++、設計模式、密碼學、數據庫、嵌入式系統開發。業余愛好是閱讀、欣賞音樂和旅遊。

目次

第0章 導讀 1
0.1 關於本書 1
0.2 讀者對象 1
0.3 本書的術語與風格 2
0.4 本書的結構 3
0.5 如何閱讀本書 5

第1章 Boost程序庫總論 7
1.1 關於Boost 7
1.1.1 什麼是Boost 7
1.1.2 安裝Boost 8
1.1.3 使用Boost 8
1.2 關於STLport 9
1.2.1 什麼是STLport 9
1.2.2 安裝STLport 10
1.2.3 使用STLport 10
1.3 開發環境 10
1.3.1 STLport的編譯方法 11
1.3.2 Boost的編譯方法 11
1.3.3 VisualStudio 2005環境設置 15

第2章 時間與日期 17
2.1 timer庫概述 17
2.2 timer 17
2.2.1 用法 18
2.2.2 類摘要 18
2.2.3 使用建議 19
2.3 progress_timer 20
2.3.1 用法 20
2.3.2 類摘要 21
2.3.3 擴展計時精度 21
2.4 progress_display 23
2.4.1 類摘要 24
2.4.2 用法 25
2.4.3 注意事項 26
2.5 date_time庫概述 27
2.5.1 編譯date_time庫 27
2.5.2 date_time庫的基本概念 28
2.6 處理日期 29
2.6.1 日期 29
2.6.2 創建日期對象 30
2.6.3 訪問日期 31
2.6.4 日期的輸出 32
2.6.5 與tm結構的轉換 33
2.6.6 日期長度 34
2.6.7 日期運算 35
2.6.8 日期區間 36
2.6.9 日期區間運算 38
2.6.10 日期迭代器 39
2.6.11 其他功能 40
2.6.12 綜合運用 40
2.7 處理時間 43
2.7.1 時間長度 43
2.7.2 操作時間長度 45
2.7.3 時間長度的精確度 46
2.7.4 時間點 48
2.7.5 創建時間點對象 48
2.7.6 操作時間點對象 49
2.7.7 與tm、time_t等結構的轉換 50
2.7.8 時間區間 51
2.7.9 時間迭代器 51
2.7.10 綜合運用 52
2.8 date_time庫的高級議題 54
2.8.1 編譯配置宏 55
2.8.2 格式化時間 55
2.8.3 本地時間 56
2.8.4 序列化 58
2.9 總結 58

第3章 內存管理 61
3.1 smart_ptr庫概述 61
3.1.1 RAII機制 61
3.1.2 智能指針 62
3.2 scoped_ptr 63
3.2.1 類摘要 63
3.2.2 操作函數 64
3.2.3 用法 65
3.2.4 與auto_ptr的區別 66
3.3 scoped_array 67
3.3.1 類摘要 67
3.3.2 用法 68
3.3.3 使用建議 69
3.4 shared_ptr 69
3.4.1 類摘要 70
3.4.2 操作函數 70
3.4.3 用法 72
3.4.4 工廠函數 74
3.4.5 應用于標準容器 75
3.4.6 應用于橋接模式 76
3.4.7 應用于工廠模式 77
3.4.8 定制刪除器 78
3.4.9 高級議題 80
3.5 shared_array 81
3.5.1 類摘要 81
3.5.2 用法 82
3.6 weak_ptr 82
3.6.1 類摘要 82
3.6.2 用法 83
3.6.3 獲得this的shared_ptr 84
3.7 intrusive_ptr 85
3.8 pool庫概述 85
3.9 pool 85
3.9.1 類摘要 86
3.9.2 操作函數 86
3.9.3 用法 87
3.10 object_pool 88
3.10.1 類摘要 88
3.10.2 操作函數 88
3.10.3 用法 89
3.10.4 使用更多的構造參數 90
3.11 singleton_pool 91
3.11.1 類摘要 91
3.11.2 用法 92
3.12 pool_alloc 93
3.13 總結 93

第4章 實用工具 95
4.1 noncopyable 95
4.1.1 原理 96
4.1.2 用法 96
4.2 typeof 97
4.2.1 動機 97
4.2.2 用法 99
4.2.3 向typeof庫注冊自定義類 100
4.2.4 高級議題 101
4.3 optional 101
4.3.1 “無意義”的值 101
4.3.2 類摘要 102
4.3.3 操作函數 102
4.3.4 用法 103
4.3.5 工廠函數 104
4.3.6 高級議題 105
4.4 assign 106
4.4.1 使用操作符+=向容器增加元素 106
4.4.2 使用操作符()向容器增加元素 107
4.4.3 初始化容器元素 108
4.4.4 減少重復輸入 110
4.4.5 與非標準容器工作 111
4.4.6 高級用法 112
4.5 swap 113
4.5.1 原理 113
4.5.2 交換數組 114
4.5.3 特化std::swap 114
4.5.4 特化ADL可找到的swap 115
4.5.5 使用建議 116
4.6 singleton 116
4.6.1 boost.pool的單件實現 117
4.6.2 boost.serialzation的單件實現 119
4.7 tribool 120
4.7.1 類摘要 121
4.7.2 用法 122
4.7.3 為第三態更名 122
4.7.4 輸入輸出 123
4.7.5 與optional的區別 124
4.8 operators 125
4.8.1 基本運算概念 126
4.8.2 算術操作符的用法 127
4.8.3 基類鏈 129
4.8.4 復合運算概念 130
4.8.5 相等與等價 131
4.8.6 解引用操作符 133
4.8.7 下標操作符 134
4.8.8 高級議題 135
4.9 exception 136
4.9.1 標準庫中的異常 137
4.9.2 類摘要 137
4.9.3 向異常傳遞信息 139
4.9.4 更進一步的用法 140
4.9.5 包裝標準異常 142
4.9.6 使用函數拋出異常 143
4.9.7 獲得更多的調試信息 144
4.9.8 高級議題 145
4.10 uuid 146
4.10.1 類摘要 147
4.10.2 用法 148
4.10.3 生成器 150
4.10.4 增強的uuid類 152
4.10.5 與字符串的轉換 153
4.10.6 SHA1摘要算法 154
4.11 config 155
4.11.1 BOOST_STRINGIZE 155
4.11.2 BOOST_STATIC_CONSTANT 155
4.11.3 禁止編譯器警告 156
4.11.4 其他工具 157
4.12 utility 157
4.12.1 BOOST_BINARY 157
4.12.2 BOOST_CURRENT_FUNCTION 158
4.13 總結 160

第5章 字符串與文本處理 163
5.1 lexical_cast 163
5.1.1 用法 164
5.1.2 異常bad_lexical_cast 165
5.1.3 對轉換對象的要求 166
5.1.4 應用于自己的類 166
5.2 format 167
5.2.1 簡單的例子 168
5.2.2 輸入操作符% 169
5.2.3 類摘要 171
5.2.4 格式化語法 172
5.2.5 format的性能 173
5.2.6 高級用法 173
5.3 string_algo 175
5.3.1 簡單的例子 175
5.3.2 string_algo概述 176
5.3.3 大小寫轉換 177
5.3.4 判斷式(算法) 178
5.3.5 判斷式(函數對象) 179
5.3.6 分類 180
5.3.7 修剪 181
5.3.8 查找 182
5.3.9 替換與刪除 184
5.3.10 分割 186
5.3.11 合併 187
5.3.12 查找(分割)迭代器 188
5.4 tokenizer 189
5.4.1 類摘要 190
5.4.2 用法 190
5.4.3 分詞函數對象 191
5.4.4 char_separator 192
5.4.5 escaped_list_separator 193
5.4.6 offset_separator 193
5.4.7 tokenizer庫的缺陷 195
5.5 xpressive 196
5.5.1 兩種使用方式 197
5.5.2 正則表達式語法簡介 197
5.5.3 類摘要 199
5.5.4 匹配 201
5.5.5 查找 203
5.5.6 替換 204
5.5.7 迭代 206
5.5.8 分詞 207
5.5.9 與regex的區別 208
5.5.10 高級議題 209
5.6 總結 211

第6章 正確性與測試 213
6.1 assert 213
6.1.1 基本用法 213
6.1.2 禁用斷言 214
6.1.3 擴展用法 215
6.1.4 BOOST_VERIFY 216
6.2 static_assert 217
6.2.1 用法 217
6.2.2 使用建議 218
6.3 test 219
6.3.1 編譯test庫 219
6.3.2 最小化的測試套件 220
6.3.3 單元測試框架簡介 221
6.3.4 測試斷言 222
6.3.5 測試用例與套件 223
6.3.6 測試實例 224
6.3.7 測試夾具 226
6.3.8 測試日志 228
6.3.9 運行參數 229
6.3.10 函數執行監視器 230
6.3.11 程序執行監視器 233
6.3.12 高級議題 234
6.4 總結 236

第7章 容器與數據結構 239
7.1 array 239
7.1.1 類摘要 240
7.1.2 操作函數 240
7.1.3 用法 241
7.1.4 能力限制 242
7.1.5 array的初始化 242
7.1.6 實現ref_array 243
7.1.7 ref_array的用法 244
7.2 dynamic_bitset 245
7.2.1 類摘要 245
7.2.2 創建與賦值 247
7.2.3 容器操作 248
7.2.4 位運算與比較運算 249
7.2.5 訪問元素 249
7.2.6 類型轉換 251
7.2.7 集合操作 251
7.2.8 綜合運用 252
7.3 unordered 253
7.3.1 散列集合簡介 254
7.3.2 散列集合的用法 255
7.3.3 散列映射簡介 256
7.3.4 散列映射的用法 256
7.3.5 性能比較 257
7.3.6 高級議題 259
7.4 bimap 261
7.4.1 類摘要 261
7.4.2 基本用法 262
7.4.3 值的集合類型 263
7.4.4 集合類型的用法 264
7.4.5 使用標簽類型 266
7.4.6 使用assign庫 267
7.4.7 查找與替換 268
7.4.8 投射 269
7.4.9 高級議題 270
7.5 circular_buffer 271
7.5.1 類摘要 271
7.5.2 用法 272
7.5.3 環型緩沖區 273
7.5.4 空間優化型緩沖區 275
7.6 tuple 275
7.6.1 最簡單的tuple:pair 276
7.6.2 類摘要 276
7.6.3 創建與賦值 277
7.6.4 訪問元素 278
7.6.5 比較操作 279
7.6.6 輸入輸出 280
7.6.7 連結變量 281
7.6.8 應用于assign庫 282
7.6.9 應用于exception庫 282
7.6.10 內部結構 282
7.6.11 使用訪問者模式 284
7.6.12 高級議題 285
7.7 any 287
7.7.1 類摘要 287
7.7.2 訪問元素 288
7.7.3 用法 289
7.7.4 簡化的操作函數 290
7.7.5 保存指針 291
7.7.6 輸出 292
7.7.7 應用于容器 294
7.8 variant 294
7.8.1 類摘要 294
7.8.2 訪問元素 295
7.8.3 用法 296
7.8.4 訪問器 297
7.8.5 與any的區別 300
7.8.6 高級議題 300
7.9 multi_array 302
7.9.1 類摘要 302
7.9.2 用法 304
7.9.3 多維數組生成器 306
7.9.4 改變形狀和大小 307
7.9.5 創建子視圖 308
7.9.6 適配普通數組 310
7.9.7 高級議題 311
7.10 property_tree 314
7.10.1 類摘要 315
7.10.2 讀取配置信息 316
7.10.3 寫入配置信息 318
7.10.4 更多用法 319
7.10.5 XML數據格式 320
7.10.6 其他數據格式 321
7.10.7 高級議題 323
7.11 總結 324

第8章 算法 327
8.1 foreach 327
8.1.1 用法 328
8.1.2 詳細解說 329
8.1.3 使用typeof 329
8.1.4 更優雅的名字 330
8.1.5 支持的序列類型 331
8.1.6 一個小問題 332
8.2 minmax 332
8.2.1 用法 333
8.2.2 使用tuples::tie 334
8.3 minmax_element 334
8.3.1 用法 334
8.3.2 其他函數的用法 335
8.4 總結 336

第9章 數學與數字 337
第10章 操作系統相關 371
第11章 函數與回調 419
第12章 并發編程 467
第13章 編程語言支持 513
第14章 其他Boost組件 537
第15章 Boost與設計模式 547
第16章 結束語 559
附錄A 推薦書目 565
附錄B 網絡資源 567
附錄C C++標準簡述 569
附錄D STL簡述 571
附錄E ref_array實現代碼 573

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 412
缺貨無法訂購

暢銷榜

客服中心

收藏

會員專區