#include stack stkInt; //一个存放int的stack容器。stack stkFloat; //一个存放float的stack容器。stack stkString; //一个存放string的stack容器。stack.push(elem); //往栈头添加元素 stack.pop(); //从栈头移除第一个元素stack(const stack &stk); //拷贝构造函数stack& operator=(const stack &stk); //重载等号操作符stack.top(); //返回最后一个压入栈元素stack.empty(); //判断堆栈是否为空stack.size(); //返回堆栈的大小完整示例代码:
#include
#include
#include
#include using namespace std;int main()
{stack s;srand(time(NULL));int num;for (int i = 0; i < 10; i++){num = rand() % 10;s.push(num);cout << num << "进栈成功" << endl;}cout << "********************" << endl;cout << "栈顶元素是 " << s.top() << endl;cout << "栈的大小" << s.size() << endl;//栈和队列不存在遍历,不存在迭代器//s.begin();cout << "********************" << endl;while (!s.empty()){cout << s.top() << "出栈" << endl;s.pop();}return 0;
}
运行结果:

#include queue queInt; //一个存放int的queue容器。queue queFloat; //一个存放float的queue容器。queue queString; //一个存放string的queue容器。queue.push(elem); //往队尾添加元素queue.pop(); //从队头移除第一个元素queue(const queue &que); //拷贝构造函数queue& operator=(const queue &que); //重载等号操作符queue.back(); //返回最后一个元素queue.front(); //返回第一个元素queue.empty(); //判断队列是否为空queue.size(); //返回队列的大小完整示例代码:
#include
#include using namespace std;int main()
{queue q;for (int i = 0; i < 10; i++){q.push(i);cout << i << "进队成功" << endl;}cout << "********************" << endl;cout << "队头元素" << q.front() << endl;cout << "队尾元素" << q.back() << endl;cout << "队列大小" << q.size() << endl;cout << "********************" << endl;while (!q.empty()){cout << q.front() << "出队" << endl;q.pop();}return 0;
}
运行结果:

下一篇:Golang并发编程