《C 泛型:STL原理和套用》是2016年清華大學出版社出版的圖書,作者是任哲、房紅征、張永忠。
基本介紹
- 中文名:C 泛型:STL原理和套用
- 出版時間:2016年
- 出版社:清華大學出版社
基本信息,內容簡介,目錄結構,
基本信息
作者:任哲、房紅征、張永忠
定價:44.50元
印次:1-1
ISBN:9787302421757
出版日期:2016.03.01
印刷日期:2016.01.28
定價:44.50元
印次:1-1
ISBN:9787302421757
出版日期:2016.03.01
印刷日期:2016.01.28
內容簡介
本書先在闡述泛型基本概念的基礎上,比較詳細和全面地介紹C++泛型實現的基本技術和基本機制,然後介紹STL的泛型實現技術及其套用方法。本書在內容選材及編寫上注意泛型以及STL初學者的特點,語言通俗易懂,精練而不枯燥;以仿真的方式介紹STL的核心內容,從而達到理論和套用並重的學習效果。 本書是一本理論和套用兼顧,適合泛型設計及STL初學者閱讀的讀物,鑒於它的特點,也適合作為在校計算機專業、軟體工程專業或與之相關專業的教材。
目錄結構
第1章C++泛型技術基礎——模板/1
1.1泛型與模板/1
1.1.1泛型的基本概念/1
1.1.2C++模板及其定義/3
1.1.3幾點說明和小結/7
1.2關於模板參數/10
1.2.1模板參數的種類/10
1.2.2模板形參和實參的結合/14
1.3特化模板和模板具現規則/16
1.3.1特化(特例化)模板/16
1.3.2模板的具現/19
1.4右值引用與模板/22
1.4.1右值引用/22
1.4.2右值引用的套用1——轉移
語義/25
1.4.3右值引用套用2——轉移函式
move()/30
1.4.4右值引用套用3——參數完美轉發
模板/31
第2章C++泛型機制的基石——數據類型表/39
2.1類模板的公有數據類型成員/39
2.1.1類的數據類型成員/39
2.1.2再談typedef/41
2.2內嵌式數據類型表及數據類型衍生/42
2.3數據類型表/44
2.3.1數據類型表的概念/44
2.3.2數據類型表的套用/47
2.4特化數據類型表/51
2.5STL中的Traits表/54
第3章STL及其使用的其他C++技術/61
3.1初識STL/613.1.1STL是C++標準庫中的模板
類庫/61
3.1.2STL應用程式示例/61
3.2STL常用的C++技術/65
3.2.1運算符重載/66
3.2.2函式對象(仿函式)/72
3.2.3lambda表達式/74
3.3智慧型指針/80
3.3.1智慧型指針的基本原理/81
3.3.2C++11支持的智慧型指針/86
第4章模擬STL三大件/90
4.1容器/90
4.1.1向量vector的仿真MyVector/90
4.1.2列表list的仿真MyList/95
4.2疊代器/101
4.2.1使用裸指針作為疊代器/102
4.2.2疊代器是指針的類封裝/105
4.2.3疊代器的代碼隔離作用/112
4.2.4STL疊代器的種類/115
4.2.5疊代器的種類標記/116
4.2.6STL對疊代器的管理/122
4.3通用算法/125
第5章容器及其套用/134
5.1向量vector/134
5.2列表list/141
5.3雙向佇列deque/144
5.4STL關聯式容器/148
5.5map容器/152
5.5.1map容器的定義/152
5.5.2map的數據插入/156
5.5.3map容器的其他常用成員
方法/160
5.5.4multimap容器/164
5.6set容器/165
5.7hash表基礎及hash容器/167
5.7.1hash表基礎/167
5.7.2hash容器/168
第6章通用算法/171
6.1通用算法的參數/171
6.1.1算法的疊代器參數/171
6.1.2輔助參數/179
6.1.3謂詞參數/180
6.2算法時間複雜度/188
6.3常用通用算法/189
6.3.1查找和搜尋算法/189
6.3.2變異算法/202
6.3.3排序算法/226
6.3.4算術算法與關係算法/241
6.3.5排列組合與集合算法/252
第7章適配器模式在STL基礎部件上的套用/256
7.1適配器/256
7.2STL容器適配器/258
7.2.1stack適配器/259
7.2.2queue適配器/264
7.2.3priority_queue適配器/265
7.3疊代器適配器/275
7.3.1插入疊代器/275
7.3.2反向疊代器/280
7.3.3IO流疊代器/284
7.4函式對象適配器/291
7.4.1函式對象的適配/291
7.4.2函式對象配接器/294
第8章STL容器記憶體空間配置器/302
8.1記憶體空間配置器及其設計基礎/302
8.1.1什麼是記憶體空間配置器/302
8.1.2記憶體空間配置器設計基礎/303
8.2STL空間配置器接口/307
8.2.1STL空間配置器接口及最簡單
的空間配置器/307
8.2.2典型STL容器空間的配置/311
8.3記憶體池的概念及套用/321
8.3.1記憶體池的規劃/321
8.3.2記憶體池的設計/323
附錄A關於關鍵字explicit/338