Effective STL這本書內(nèi)容通俗易懂,深入淺出。該書中的專題條款講解,能幫助讀者們在通往STL圣殿的跋涉途中,挑選更好的工具,以更高的效率前進。如果你使用STL一段時間以后開始煩惱,那么,開始看Effective STL吧!本節(jié)內(nèi)容東坡小編為大家整理帶來的是一份pdf格式免費高清電子中文版Effective STL電子書,需要查閱的朋友點擊本文相應(yīng)的下載地址進行下載即可!
Effective STL(中文版)內(nèi)容簡介
本書是EffectiveC++的第3卷,被評為“值得所有C++程序員閱讀的C++書籍之一”。本書詳細講述了使用STL的50條指導(dǎo)原則,并提供了透徹的分析。
Effective STL(中文版)目錄
引言1
1容器9
第1條:慎重選擇容器類型。9
第2條:不要試圖編寫?yīng)毩⒂谌萜黝愋偷拇a。12
第3條:確保容器中的對象拷貝正確而高效。16
第4條:調(diào)用empty而不是檢查size()是否為0。18
第5條:區(qū)間成員函數(shù)優(yōu)先于與之對應(yīng)的單元素成員函數(shù)。20
第6條:當心C++編譯器最煩人的分析機制。26
第7條:如果容器中包含了通過new操作創(chuàng)建的指針,切記在容器對象析構(gòu)前將
指針delete掉。28
第8條:切勿創(chuàng)建包含auto_ptr的容器對象。32
第9條:慎重選擇刪除元素的方法。34
第10條:了解分配子(allocator)的約定和限制。38
第11條:理解自定義分配子的合理用法。44
第12條:切勿對STL容器的線程安全性有不切實際的依賴。47
2vector和string51
第13條:vector和string優(yōu)先于動態(tài)分配的數(shù)組。51
第14條:使用reserve來避免不必要的重新分配。53
第15條:注意string實現(xiàn)的多樣性。55
第16條:了解如何把vector和string數(shù)據(jù)傳給舊的API。60
第17條:使用“swap技巧”除去多余的容量。63
第18條:避免使用vector<bool>。64
3關(guān)聯(lián)容器67
第19條:理解相等(equality)和等價(equivalence)的區(qū)別。67
第20條:為包含指針的關(guān)聯(lián)容器指定比較類型。71
第21條:總是讓比較函數(shù)在等值情況下返回false。74
第22條:切勿直接修改set或multiset中的鍵。77
第23條:考慮用排序的vector替代關(guān)聯(lián)容器。82
第24條:當效率至關(guān)重要時,請在map::operator[]與map::insert之間謹慎做出選擇。87
第25條:熟悉非標準的散列容器。91
4迭代器95
第26條:iterator優(yōu)先于const_iterator、reverse_iterator及const_reverse_iterator。95
第27條:使用distance和advance將容器的const_iterator轉(zhuǎn)換成iterator。98
第28條:正確理解由reverse_iterator的base()成員函數(shù)所產(chǎn)生的iterator的用法。101
第29條:對于逐個字符的輸入請考慮使用istreambuf_iterator。103
5算法106
第30條:確保目標區(qū)間足夠大。107
第31條:了解各種與排序有關(guān)的選擇。110
第32條:如果確實需要刪除元素,則需要在remove這一類算法之后調(diào)用erase。115
第33條:對包含指針的容器使用remove這一類算法時要特別小心。118
第34條:了解哪些算法要求使用排序的區(qū)間作為參數(shù)。121
第35條:通過mismatch或lexicographical_compare實現(xiàn)簡單的忽略大小寫的字符
串比較。124
第36條:理解copy_if算法的正確實現(xiàn)。128
第37條:使用accumulate或者for_each進行區(qū)間統(tǒng)計。130
6函數(shù)子、函數(shù)子類、函數(shù)及其他135
第38條:遵循按值傳遞的原則來設(shè)計函數(shù)子類。135
第39條:確保判別式是“純函數(shù)”。138
第40條:若一個類是函數(shù)子,則應(yīng)使它可配接。141
第41條:理解ptr_fun、mem_fun和mem_fun_ref的來由。145
第42條:確保less<T>與operator<具有相同的語義。148
7在程序中使用STL152
第43條:算法調(diào)用優(yōu)先于手寫的循環(huán)。152
第44條:容器的成員函數(shù)優(yōu)先于同名的算法。159
第45條:正確區(qū)分count、find、binary_search、lower_bound、upper_bound和
equal_range。161
第46條:考慮使用函數(shù)對象而不是函數(shù)作為STL算法的參數(shù)。168
第47條:避免產(chǎn)生“直寫型”(write-only)的代碼。172
第48條:總是包含(#include)正確的頭文件。175
第49條:學(xué)會分析與STL相關(guān)的編譯器診斷信息。176
第50條:熟悉與STL相關(guān)的Web站點。183
參考書目189
A地域性與忽略大小寫的字符串比較193
B對Microsoft的STL平臺的說明202
Effective STL(中文版)內(nèi)容截圖
- PC官方版
- 安卓官方手機版
- IOS官方手機版