图书介绍
Effective STL影印本PDF|Epub|txt|kindle电子书版本下载
- (美)迈耶斯著 著
- 出版社: 北京:中国电力出版社
- ISBN:7508314972
- 出版时间:2003
- 标注页数:260页
- 文件大小:12MB
- 文件页数:280页
- 主题词:C语言-程序设计-英文
PDF下载
下载说明
Effective STL影印本PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
Introduction1
Chapter 1:Containers11
Item 1:Choose your containers with care11
Item 2:Beware the illusion of container-independent code.15
Item 3:Make copying cheap and correct for objects in containers.20
Item 4:Call empty instead of checking size() against zero.23
Item 5:Prefer range member functions to theri single-element counterparts.24
Item 6:Be alert for C++ s most vexing parse.33
Item 7:When using containers of newed poninters,remember to delete the pointers before the container is destroyed.36
Item 8:Never create containers of auto_ptrs.40
Item 9:Choose carefully among erasing options.43
Item 10:Be aware of allocator conventions and restrictions.48
Item 11:Understand the legitimate uses of custom allocators.54
Item 12:Have realistic expectation about the thread safety of STL containers.58
Chapter 2:vector and string63
Item 13:Prefer vector and string to dynamically allocated arrays.63
Item 14:Use reserve to aviod unnecessary reallocations.66
Item 15:Be aware of variations in string implementations.68
Item 16:Konw how to pass vector and string data to legacy APIs.74
Item 17:Use“the swap trick”to trim excess capacity.77
Item 18:Avoid using vector<bool>.79
Chapter 3:Associative Containers83
Item 19:Understand the difference between equality and equivalence.83
Item 20:Specify comparison types for associative containers of pointers.88
Item 21:Always have comparison functions return false for equal values.92
Item 22:Avoid in-place key modification in set and multiset.95
Item 23:Consider replacing associative containers with sorted vectors.100
Item 24:Choose carefully between map∷operator[]and map∷insert when efficiency is important.106
Item 25:Familiarize yourself with the nonstandard hashed containers.111
Chapter 4:Iterators116
Item 26:Prefer iterator to const_iterator,reverse_iterator,and const_reverse_iterator.116
Item 27:Use distance and advance to convert a container s const_iterators to iterators.120
Item 28:Understand how to use a reverse_iterator s base iterator.123
Item 29:Consider istreambuf_iterators for character-by-character input.126
Chapter 5:Algorithms128
Item 30:Make sure destination ranges are big enough.129
Item 31:Know your sorting options.133
Item 32:Follow remove-like algorithms by erase if you really want to remove something.139
Item 33:Be wary of remove-like algorithms on containers of pointers.143
Item 34:Note which algorithms expect sorted ranges.146
Item 35:Implement simple case-insensitive string comparisons via mismatch or lexicographicl_compare.150
Item 36:Understand the proper implementation of copy_if.154
Item 37:Use accumulate or for_each to summarize ranges.156
Chapter 6:Functors,Functor Classes,Functions,etc.162
Item 38:Design functor classes for pass-by-value.162
Item 39:Make predicates pure functions.166
Item 40:Make functor classes adaptable.169
Item 41:Understand the reasons for ptr_fun,mem_fun,and mem_fun_ref.173
Item 42:Make sure less<T> means operator<.177
Chapter 7:Programming with the STL181
Item 43:Prefer algorithm calls to hand-written loops.181
Item 44:Prefer member functions to algorithms with the same names.190
Item 45:Distinguish among count,find,binary_search,lower_bound,upper_bound,and equal_range.192
Item 46:Consider function objects instead of functions as algorithm parameters.201
Item 47:Avoid producing write-only code.206
Item 48:Always #include the proper headers.209
Item 49:Learn to decipher STL-related compiler diagnostics.210
Item 50:Familiarize yourself with STL-related wed sites.217
Bibliography225
Appendix A:Locales and Case-Insensitive String Comparisons229
Appendix B:Remarks on Microsoft s STL Platforms239
Index245