- 所有容器的共通操作
equality(==) 和 inequality(!=) 运算符,返回 true /false;
assignment(=) 运算符,将某个容器复制给另一个容器;
empty();
size();
clear();
顺序性容器
1. vector
2. list
3. deque
定义顺序性容器的 5 种方法
-
产生空的容器 vector v;
-
产生特定大小的容器 vector v(10);
-
产生特定大小的容器,并指定初值 vector(10,0);
-
通过 iterator 产生容器
int a[5]={1,2,3,4,5};
vector(a,a+5);通过容器产生容器
vector v1;
vectro v2(v1);
特别的函数
vector<> :
- ` push_back()
- ` pop_back()
list<>,deque<> :
- `push_back()
- pop_back()
- push_front()
- pop_front()
- front()
- back()`
insert(elemtype value)函数
erase(iterator poist)函数
常用的泛型算法
- `find() 用于搜索无序集合中是否存在某值
- `count() 返回数值相符的元素数目
- copy() 接受2个 iterator,标出复制范围
map
#include<iostream>
#include<fstream>
#include<map>
#include<string>
using namespace std;
int main() {
map<string, int> words;
words["vermeer"] = 1;
string s;
while (cin >> s) words[s]++;
map<string, int>::iterator it = words.begin();
for (; it != words.end(); it++) {
cout << "key:" << it->first << "value:" << it->second << endl;
}
int count = 0;
map<string, int>::iterator ib;
ib = words.find("vermeer");
if (ib != words.end()) count = ib->second;
int count2 = 0;
string search_word("vermeer");
if (words.count(search_word)) count = words[search_word];
}
set
- 去重
- 排序