stl中的容器主要分為順序容器和關聯容器。其中順序容器主要有vector, deque和list;關聯容器主要有map,set和multimap multiset。關聯容器,通過鍵儲存和讀取元素。順序容器,通過元素在容器中的位置順序儲存和讀取元素。
指定自定義排序方法或者過載 operator < 操作符等方式來自定義排序規則
// 呼叫方式class compareasc
bool operator ()(const cstring& i_stfir, const cstring& i_stsec)
};
std::vectorvectdata;
std::sort(vectdata.begin(),vectdata.end(),compareasc());
std::mapmapdata;
自定義迭代器使用foreach
foreach遍歷集合好處很多,因為.net framework在foreach中已經做了try.catch和dispose的操作。那麼如果想自定義乙個集合並且該集合能使用foreach來遍歷,一般做法是實現system.collections.ienumerable和system.collecti...
自定義迭代器使用foreach
foreach遍歷集合好處很多,因為.net framework在foreach中已經做了try.catch和dispose的操作。那麼如果想自定義乙個集合並且該集合能使用foreach來遍歷,一般做法是實現system.collections.ienumerable和system.collecti...
關聯容器使用自定義的元素比較方法
容器中元素操作的型別也是容器型別的一部分。在定義關聯容器時,需要將自定義的操作型別在尖括號中緊跟在元素型別之後。如fruit類無 運算子,可以定義如下的函式 bool compare const fruit lhs,const fruit rhs return lhs.size 在定義multise...