《STL原始碼剖析》 -- 寫在最後
《STL原始碼剖析》系列文章經過一個星期的連載在今天就正式結束了,我將大部分STL關鍵的部分都進行了註釋。
這個系列文章後期寫的比較簡略,這是因為如果你看過前面的文章,再看後面的原始碼會非常輕鬆。
這個系列有幾篇文章我要特別推薦一下:
<stl_config.h>:由於我剖析的版本比較老,那個時候很多編譯器對C++標準支援不到位,所以會用很多相容的技巧。
在學習STL原始碼的時候,首先要了解這個檔案中的定義,後面才能輕鬆應付一些條件編譯。
<stl_alloc.h>:SGI STL為了防止記憶體碎片,在allocator實現部分使用了記憶體池,當然,如果編譯器支援不夠,
還有一個簡單包裝的<defalloc.h>:這個記憶體池構建的十分精巧,非常值得我們去深入學習。
<stl_uninitilized.h>:SGI STL為了效率,在構建一系列物件的時候並不是依次呼叫建構函式,
而是先構建一個物件,然後進行物件的拷貝,這個值得注意。
<stl_iterator.h>:迭代器的重要性不需要多說,這個是STL將演算法和容器結合的粘合劑。
<stl_vector.h>:這個就是動態陣列,STL容器使用的技術在這裡面我都註釋的差不多了,
看完這個再看其它容器會很輕鬆。另外我的序列式容器寫的比較詳細,關聯式容器寫的比較簡略,
主要思想都是一樣的,所以後面寫的文章都是簡單註釋。
有了上面幾個檔案的基礎,你再看其餘檔案就會非常快,看註釋有的時候反而成了一種負擔。
下一步的寫作計劃是網路程式設計,我準備把《TCP/IP詳解》三卷讀完,這期間會寫一些具體的例項,
同時也會閱讀一下C++0x有什麼值得關注的變化,也會寫一些文章。STL方面會寫一些慣用法背後的思想及實現。
下學期就大三了,還要進行ACM集訓,更新速度可能是一週一篇。為了鍛鍊一下閱讀能力,
不定期會翻譯些有價值的文章給大家分享。
相關文章
- 《STL原始碼剖析》-- memory原始碼
- 《STL原始碼剖析》 -- stl_algo.h原始碼Go
- 《STL原始碼剖析》-- stl_algobase.h原始碼Go
- 《STL原始碼剖析》-- stl_hashtable.h原始碼
- 《STL原始碼剖析》-- stl_multimap.h原始碼
- 《STL原始碼剖析》-- stl_map.h原始碼
- 《STL原始碼剖析》-- stl_multiset.h原始碼
- 《STL原始碼剖析》-- stl_set.h原始碼
- 《STL原始碼剖析》-- stl_tree.h原始碼
- 《STL原始碼剖析》-- stl_heap.h原始碼
- 《STL原始碼剖析》-- stl_slist.h原始碼
- 《STL原始碼剖析》-- stl_queue.h原始碼
- 《STL原始碼剖析》-- stl_stack.h原始碼
- 《STL原始碼剖析》-- stl_deque.h原始碼
- 《STL原始碼剖析》-- stl_list.h原始碼
- 《STL原始碼剖析》-- stl_pair.h原始碼AI
- 《STL原始碼剖析》-- stl_vector.h原始碼
- 《STL原始碼剖析》-- stl_iterator.h原始碼
- 《STL原始碼剖析》-- stl_uninitialized.h原始碼Zed
- 《STL原始碼剖析》-- stl_alloc.h原始碼
- STL原始碼剖析——vector容器原始碼
- 《STL原始碼剖析》-- stl_relops.h原始碼
- 《STL原始碼剖析》-- stl_hash_map.h原始碼
- 《STL原始碼剖析》-- stl_hash_set.h原始碼
- 《STL原始碼剖析》-- stl_construct.h原始碼Struct
- 《STL原始碼剖析》-- stl_config.h原始碼
- 《STL原始碼剖析》-- defalloc.h原始碼
- 《STL原始碼剖析》-- 特別說明原始碼
- 《STL原始碼剖析》-- type_traits.h原始碼AI
- 【STL 原始碼剖析】淺談 STL 迭代器與 traits 程式設計技法原始碼AI程式設計
- C++(STL原始碼):37---仿函式(函式物件)原始碼剖析C++原始碼函式物件
- 侯老師--STL原始碼剖析--書中的疑問二 (轉)原始碼
- 侯老師--STL原始碼剖析--書中的疑問三 (轉)原始碼
- 侯老師--STL原始碼剖析--書中的疑問一 (轉)原始碼
- 最清晰易懂的 Go WaitGroup 原始碼剖析GoAI原始碼
- Java集合原始碼剖析——ArrayList原始碼剖析Java原始碼
- 【Java集合原始碼剖析】ArrayList原始碼剖析Java原始碼
- 【Java集合原始碼剖析】Vector原始碼剖析Java原始碼