《stl原始碼剖析》系列文章經過乙個星期的**在今天就正式結束了,我將大部分stl關鍵的部分都進行了注釋。
這個系列文章後期寫的比較簡略,這是因為如果你看過前面的文章,再看後面的原始碼會非常輕鬆。
:由於我剖析的版本比較老,那個時候很多編譯器對c++標準支援不到位,所以會用很多相容的技巧。
在學習stl原始碼的時候,首先要了解這個檔案中的定義,後面才能輕鬆應付一些條件編譯。
:sgi stl為了防止記憶體碎片,在allocator實現部分使用了記憶體池,當然,如果編譯器支援不夠,
還有乙個簡單包裝的:這個記憶體池構建的十分精巧,非常值得我們去深入學習。
:sgi stl為了效率,在構建一系列物件的時候並不是依次呼叫建構函式,
而是先構建乙個物件,然後進行物件的拷貝,這個值得注意。
:迭代器的重要性不需要多說,這個是stl將演算法和容器結合的粘合劑。
:這個就是動態陣列,stl容器使用的技術在這裡面我都注釋的差不多了,
看完這個再看其它容器會很輕鬆。另外我的序列式容器寫的比較詳細,關聯式容器寫的比較簡略,
主要思想都是一樣的,所以後面寫的文章都是簡單注釋。
有了上面幾個檔案的基礎,你再看其餘檔案就會非常快,看注釋有的時候反而成了一種負擔。
下一步的寫作計畫是網路程式設計,我準備把《tcp/ip詳解》三卷讀完,這期間會寫一些具體的例項,
同時也會閱讀一下c++0x有什麼值得關注的變化,也會寫一些文章。stl方面會寫一些慣用法背後的思想及實現。
下學期就大三了,還要進行acm集訓,更新速度可能是一周一篇。為了鍛鍊一下閱讀能力,
不定期會翻譯些有價值的文章給大家分享。
STL原始碼剖析
這兩天略讀完了 stl原始碼剖析 之所以是略讀,就是只看大體,不講具現 這個詞在 深度探析c 物件模型 中比較多 已經看過好幾本c 的書了,感覺c 本身設計的博大精深,而c 編譯器就更是乙個神奇的東西,換句話說,你永遠不知道c 編譯器揹著你做了哪些出乎你意料的事 不扯遠了 我主要是想看stl容器的具...
STL原始碼剖析
這兩天略讀完了 stl原始碼剖析 之所以是略讀,就是只看大體,不講具現 這個詞在 深度探析c 物件模型 中比較多 已經看過好幾本c 的書了,感覺c 本身設計的博大精深,而c 編譯器就更是乙個神奇的東西,換句話說,你永遠不知道c 編譯器揹著你做了哪些出乎你意料的事 不扯遠了 我主要是想看stl容器的具...
STL原始碼剖析
花了兩天時間略讀了一下 stl原始碼分析 看了個大體,對於細節並沒有深究。之所以想翻翻這本書,主要是想看看stl中的特性 介面卡的具體實現。看完之後收穫還是蠻大的,模板的各種組合讓我眼前一亮,下面大概總結一些內容。1.記憶體分配 sgi記憶體分配採用兩級實現,對於大記憶體塊的申請 大於128k 由第...