c++STL

使用标准库的栈和队列时, 应包含先关头文件. 
在栈中应包含头文件: #include< stack > 
定义: stack< int > s;

s.empty();         //如果栈为空则返回true, 否则返回false;
s.size();          //返回栈中元素的个数
s.top();           //返回栈顶元素, 但不删除该元素
s.pop();           //弹出栈顶元素, 但不返回其值
s.push();          //将元素压入栈顶

包含头文件: #include< queue > 
定义: queue< int > q;

q.empty();         //如果队列为空返回true, 否则返回false     
q.size();          //返回队列中元素的个数
q.front();         //返回队首元素但不删除该元素
q.pop();           //弹出队首元素但不返回其值
q.push();          //将元素压入队列
q.back();          //返回队尾元素的值但不删除该元素
创建vector对象:
一般3种形式:
1:不指定元素的个数。例如:vector<int>a;
2:创建时指定容器的大小。例如:vector<double>a(10);//注意下标是0~9,每个元素初始值为0.0;
3:创建一个具有n个元素的向量容器对象,每个元素具有指定的始值。例如:vector<double>a(20,8.6)//该容器有20个元素,每个元素都是8.6;
尾部元素的扩张:
一般用push_back()对vector容器在尾部追加新元素。vector会自动分配内存,可对空的vector对象扩张,也可以对已有元素的vector对象扩张。
下标方式访问vector元素:
类似数组,vector<int>a(3); a[0]=1;a[1]=3;a[2]=4;
用迭代器访问vector元素:
常用迭代器配合循环来对vector对象进行遍历访问,迭代器的类型一定要与它要遍历的vector对象的元素了类型一致。
有关MAP的知识点:https://www.cnblogs.com/fnlingnzb-learner/p/5833051.html;
原文地址:https://www.cnblogs.com/txrtyy/p/8900712.html