【C++】STL容器
STL容器
標籤:c++
[TOC]
容器的成員函式
所有容器都有的
int size()
、bool empty()
順序容器和關聯容器
begin()
、end()
、rbegin()
、rend()
、erase()
、clear()
順序容器(vector
/string
/list
/deque
)
front()
、back()
、push_back()
、pop_back()
、insert()
容器
vector
建構函式
vector()
無參建構函式
vector(int n)
初始化有n個元素
vector(int n, const T &val)
初始化為n個val
vector(iterator first, iterator last)
操作
clear()
/empty()
/pop_back()
/push_back()
/size()
front()
/back()
insert()
insert(iterator i, const T &val)
insert(iterator i, iterator first, iterator last)
erase()
erase(iterator i)
erase(iterator first, iterator last)
set
/multiset
iterator find(const T &val)
iterator insert(const T &val)
iterator insert(iterator first, iterator last)
int count(const T &val)
iterator lower_bound(const T &val)
查詢最大的位置it,使得$[begin(), it)$中的元素都比val小
iterator upper_bound(const T &val)
查詢最小的位置it,使得$[it, end())$中的元素都比val大
erase()
erase(iterator i)
erase(iterator first, iterator last)
int erase(const T &val)
multiset
)
map
/multimap
multimap
可以用作學生成績排序
string
建構函式
string s1()
空
string s2("Hello")
Hello
string s3(4, 'K')
KKKK
string s4("12345", 1, 3)
234,子串(n, m)表示從n開始數m個
賦值
可以用char *
型別的常量、變數,char
型別的常量、變數, string
對string
賦值
求子串
string substr(int n = 0, int m = string :: npos)const
當m預設或者超過字串的長度,則求從n開始到結尾的子串
查詢子串和字元
查不到時返回string :: npos
find()
從前往後查詢字元或者子串出現的位置rfind()
從後往前查詢字元或者子串出現的位置find_first_of()
find_last_of()
find_first_not_of()
find_last_not_of()
替換子串
replace()
刪除子串
erase()
插入
insert()