C++实现stack容器适配器
Posted Wecccccccc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++实现stack容器适配器相关的知识,希望对你有一定的参考价值。
代码如下:
#include <iostream>
#include <deque>
using namespace std;
template<typename T,typename Con = deque<T>>
class Stack
{
public:
Stack() {}
void Push(const T &x) {
_c.push_back(x);
}
void Pop()
{
_c.pop_back();
}
T & Top()
{
return _c.back();
}
const T &Top() const
{
return _c.back();
}
size_t Size() const
{
return _c.size();
}
bool Empty() const
{
return _c.empty();
}
private:
Con _c;
};
int main()
{
Stack<int>s;
s.Push(1);
s.Push(2);
s.Push(3);
s.Push(4);
cout << s.Size() << endl;
cout << s.Top() << endl;
s.Pop();
s.Pop();
cout << s.Size() << endl;
cout << s.Top() << endl;
return 0;
}
测试结果:
以上是关于C++实现stack容器适配器的主要内容,如果未能解决你的问题,请参考以下文章
C++初阶----deque(双端队列)+stack queue模拟实现
[ C++ ] STL_stack(栈)queue(队列)使用及其重要接口模拟实现