C STL學習筆記一

2021-07-05 19:28:50 字數 468 閱讀 1871

資料結構與演算法是程式設計的核心,stl中包含各種資料結構和優秀的演算法,確實值得深入學習,本文中雖然著重使用,但希望有心的朋友能多看看相關資料結構的實現,對於c++語言確實會有較大幫助。

ps:按照網上孟巖老師的安裝方法,我出現了一些問題,後來按照上面文章所說的安裝成功。

關於為何採用sgi版本stl庫,目前我並沒有較深感觸,網上的說法是:

1.開源

2.可讀性強

3.自設了一些容器,如slist、hash_set等

談點我的感覺:運用vc自帶庫使用set容器時,發現可以通過迭代器來改變set的元素,改變會破壞紅黑樹,但編譯通過,這個是比較嚴重的bug。

可以的話建議安裝sgi版本的stl庫。

在筆記中,我主要介紹各容器的用法,工具選用vc6.0。關於自定義型別資料如何使用容器,這個是許多人糾結的問題,我盡量寫一些例子。

因為是新學c++,所以文中不可避免會存在錯誤的地方,希望大家批評指正。

C STL 學習筆記

一 stl a include include using namespace std 1 void sort iterator start,iterator end void sort iterator start,iterator end,strictweakordering cmp cmp 函...

C STL學習筆記

remove if使用方法 int a vectorarr a,a 14 std remove if arr.begin arr.end std bind2nd std less 100 for int i 0 i arr.size i 輸出結果為 240 100200 300102 555100 ...

C STL學習筆記

stl是個寶 由於c stl的開放,代替了那些需要老老實實寫結構體來實現堆疊二叉樹等資料結構的c等語言,很多演算法不需要自己來實現了 所有容器都有的兩個時間複雜度為o 1 的方法 a.size 返回容器中元素的個數 a.empty 返回容器是否為空 vector也叫變長陣列,即陣列長度可以動態變化。...