Effective STL中文版

Effective STL中文版 pdf epub mobi txt 電子書 下載2025

出版者:電子工業齣版社
作者:[美] Scott Meyers
出品人:博文視點
頁數:220
译者:潘愛民
出版時間:2013-5
價格:59.00元
裝幀:平裝
isbn號碼:9787121201257
叢書系列:傳世經典書叢
圖書標籤:
  • C++
  • STL
  • 編程
  • C/C++
  • 計算機
  • 程序設計
  • 算法
  • 編程語言
  • Effective STL
  • 中文版
  • C++標準模闆庫
  • 高效編程
  • 現代C++
  • STL最佳實踐
  • 模闆設計
  • 性能優化
  • 代碼質量
  • 可讀性
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

《Effective STL中文版:50條有效使用STL的經驗》是EffectiveC++的第3捲,被評為“值得所有C++程序員閱讀的C++書籍之一”。《Effective STL中文版:50條有效使用STL的經驗》詳細講述瞭使用STL的50條指導原則,並提供瞭透徹的分析和深刻的實例,實用性極強,是C++程序員必備的基礎書籍。C++的標準模闆庫(STL)是革命性的,要用好STL並不容易。《Effective STL中文版:50條有效使用STL的經驗》作者ScottMeyers揭示瞭專傢總結的一些關鍵規則,包括專傢們總是采用的做法,以及專傢們總是避免的做法。通過這些規則,STL程序員可以最大限度地使用STL。

著者簡介

Scott Meyers,世界頂級C++軟件開發技術權威之一。他是兩本暢銷書Effective C++和More Effective C++的作者,以前曾經是C++ Report的專欄作傢。他經常為C/C++ Users Journal和Dr. Dobb's Journal撰稿,也為全球範圍內的客戶做谘詢活動。他也是Advisory Boards for NumeriX LLC和InfoCruiser公司的成員。他擁有Brown University的計算機科學博士學位。

潘愛民,任職於阿裏雲計算有限公司,擔任阿裏雲OS首席架構師。長期從事軟件和係統技術的研究與開發工作,撰寫瞭大量軟件技術文章,著譯瞭多部經典計算機圖書,在國內外學術刊物上發錶瞭30多篇文章。曾經任教於北京大學和清華大學(兼職)。後進入工業界,先後任職於微軟亞洲研究院、盛大網絡發展有限公司和阿裏雲計算有限公司。目前也是工信部移動操作係統專傢組成員。

潘愛民獲得瞭數學學士學位和計算機科學博士學位,主要研究領域包括軟件設計、信息安全、操作係統和互聯網技術。

圖書目錄

引言...............................................................................................................1
1 容器..........................................................................................9
第1 條:慎重選擇容器類型。............................................................... 9
第2 條:不要試圖編寫獨立於容器類型的代碼。.................................... 12
第3 條:確保容器中的對象拷貝正確而高效。....................................... 16
第4 條:調用empty 而不是檢查size()是否為0。................................... 18
第5 條:區間成員函數優先於與之對應的單元素成員函數。............................ 20
第6 條:當心C++編譯器最煩人的分析機製。.................................................... 26
第7 條:如果容器中包含瞭通過new 操作創建的指針,切記在容器對象析構前將
指針delete 掉。......................................................................... 28
第8 條:切勿創建包含auto_ptr 的容器對象。......................................... 32
第9 條:慎重選擇刪除元素的方法。............................................................... 34
第10 條:瞭解分配子(allocator)的約定和限製。........................................... 38
第11 條:理解自定義分配子的閤理用法。............................................. 44
第12 條:切勿對STL 容器的綫程安全性有不切實際的依賴。......................... 47
2 vector 和string .....................................................................................51
第13 條:vector 和string 優先於動態分配的數組。............................................. 51
第14 條:使用reserve 來避免不必要的重新分配。............................................. 53
第15 條:注意string 實現的多樣性。.......................................................... 55
第16 條:瞭解如何把vector 和string 數據傳給舊的API。.................................... 60
第17 條:使用“swap 技巧”除去多餘的容量。................................................... 63
第18 條:避免使用vector<bool>。................................................................................. 64
3 關聯容器..........................................................................................................................67
第19 條:理解相等(equality)和等價(equivalence)的區彆。...................................... 67
第20 條:為包含指針的關聯容器指定比較類型。........................................ 71
第21 條:總是讓比較函數在等值情況下返迴false。.............................................. 74
第22 條:切勿直接修改set 或multiset 中的鍵。............................................... 77
第23 條:考慮用排序的vector 替代關聯容器。............................................... 82
第24 條:當效率至關重要時,請在map::operator[ ]與map::insert 之間謹慎做齣選擇。..... ...................... 87
第25 條:熟悉非標準的散列容器。........................................................................... 91
4 迭代器..............................................................................................................95
第26 條:iterator 優先於const_iterator、reverse_iterator 及const_reverse_iterator。.....95
第27 條:使用distance 和advance 將容器的const_iterator 轉換成iterator。............ 98
第28 條:正確理解由reverse_iterator 的base()成員函數所産生的iterator 的用法。.... ...................... 101
第29 條:對於逐個字符的輸入請考慮使用istreambuf_iterator。......................... 103
5 算法...............................................................................................................................106
第30 條:確保目標區間足夠大。....................................................................... 107
第31 條:瞭解各種與排序有關的選擇。................................................................110
第32 條:如果確實需要刪除元素,則需要在remove 這一類算法之後調用erase。...........115
第33 條:對包含指針的容器使用remove 這一類算法時要特彆小心。.....................118
第34 條:瞭解哪些算法要求使用排序的區間作為參數。.................................. 121
第35 條:通過mismatch 或lexicographical_compare 實現簡單的忽略大小寫的字符
串比較。.................................................................. 124
第36 條:理解copy_if 算法的正確實現。............................................................. 128
第37 條:使用accumulate 或者for_each 進行區間統計。.................................... 130
6 函數子、函數子類、函數及其他...........................................................................135
第38 條:遵循按值傳遞的原則來設計函數子類。..................................... 135
第39 條:確保判彆式是“純函數”。................................................................. 138
第40 條:若一個類是函數子,則應使它可配接。............................................... 141
第41 條:理解ptr_fun、mem_fun 和mem_fun_ref 的來由。................................. 145
第42 條:確保less<T>與operator<具有相同的語義。........................................ 148
7 在程序中使用STL ..............................................................................................152
第43 條:算法調用優先於手寫的循環。................................................................. 152
第44 條:容器的成員函數優先於同名的算法。........................................................ 159
第45 條:正確區分count、find、binary_search、lower_bound、upper_bound 和
equal_range。....... ...................... 161
第46 條:考慮使用函數對象而不是函數作為STL 算法的參數。.................................. 168
第47 條:避免産生“直寫型”(write-only)的代碼。................................................ 172
第48 條:總是包含(#include)正確的頭文件。................................................. 175
第49 條:學會分析與STL 相關的編譯器診斷信息。..................................... 176
第50 條:熟悉與STL 相關的Web 站點。........................................................... 183
參考書目........................................................................................189
附錄A 地域性與忽略大小寫的字符串比較.................................................193
附錄B 對Microsoft 的STL 平颱的說明..........................................202
· · · · · · (收起)

讀後感

評分

如果说《C++标准程序库》是大而全的圣经的话,那么这本《Effective STL》就是针对圣经的讲解。 《C++标准程序库》和《Effective STL》是两本好书。有同事说看过《C++标准程序库》就不用看《Effective STL》了,我可不这么认为。事实上,两本书是不能互相替代的,毫无疑问,如...  

評分

《STL源码剖析》讲原理,那么这本《Effective STL》就是讲实用技术! 这是继《STL源码剖析》之后,我看的第二本STL书籍,书中一些知识借鉴《STL源码剖析》的内容,没有源码级那么难懂,但是讲解的东西却非常的实用,接地气。比如为何调用 empty 而不是 size, 如何在循环中删除...  

評分

評分

如果说《C++标准程序库》是大而全的圣经的话,那么这本《Effective STL》就是针对圣经的讲解。 《C++标准程序库》和《Effective STL》是两本好书。有同事说看过《C++标准程序库》就不用看《Effective STL》了,我可不这么认为。事实上,两本书是不能互相替代的,毫无疑问,如...  

評分

算是第一本完整看完的比较权威些的C++书籍,近一年上班使用C++以来才知道,C++水太深,大学学的那点皮毛完全不够用,Effective系列一直都是比较好的,有些地方稍微翻译的有点瑕疵,但整体很好。对我来说这本看完收获挺多,有问题及时和同事讨论。。谢谢晓露。。以后还要继续恶...  

用戶評價

评分

書本身不錯,譯者也很專業,但是,我還是灰常BS這種翻譯版和原版對不上頁碼的情況,對errata簡直就是自尋死路。。。

评分

這本書比較容易讀,難度較小。其中講瞭一些 STL 中的技巧和坑點,值得一看。

评分

不得不讀的好書,剛買瞭一本收藏。 PS:這個版本很適閤收藏,紙質特好。

评分

需要更新到C++ 11

评分

書本身不錯,譯者也很專業,但是,我還是灰常BS這種翻譯版和原版對不上頁碼的情況,對errata簡直就是自尋死路。。。

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有