C++學習筆記 -標準模板庫(STL)

標準模板庫(Standard Template Library )最初是由惠普公司提出來的,經過多年努力,C++標準委員會最終在1994年將STL納入標準庫中。STL是通過C++語言進行實現的,並作爲一個泛型化的數據結構和算法庫,簡化了許多編程任務,而且幾乎C++標準庫函數都是使用模板實現的。

STL分爲三類:

容器(container):用於容納其它類型的類對象,STL提供如向量、列表等諸多不同特性的容器。

1.順序容器   vector,list,deque

2.關聯容器  set,multiset,map,multimap

3.容器適配器)stack,queue,priority_queue

迭代器(iterator):是一種智能指針,用於指向容器中或者流中的對象,並提供一定的訪問方法。

1. 輸入迭代器(input iterator)

2.輸出迭代器(output iterator)

3.向前迭代器(forward iterator

4.雙向迭代器(bidirectional iterator)

5.隨楨訪問迭代器​(random-access iterator)

算法(algorithm)​​:它是STL的核心部分,提供一系列處理元素的特殊方法,如對容器中的元素進行排序、搜索等操作。

STL提代了80多種算法,基本分爲三大類:

1.非修改性算法,這種算法不修改容器 內容,只是從容器中獲取信息。比如:find(),find_end(),lower_bound(),search()等。

2.修改性算法,通過插入,刪除,重排等操作改變容器中包含的元素,以改變元素的值,比如:copy(),swap(),replace(),remove(),rotate()等。

3.排序,合併和相關操作,改變容器中序列的順序。比如:sort(),binary_search(),merge(),min(),max()等。​​​

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章