#include<iostream>
using namespace std;
template <class Object>
class Stack{
private:
struct Node{
Object data;
Node * next;
Node(const Object & theelem , Node * n = NULL)
:data(theelem),next(n){}
};
Node * topOfStack;
int stacklen;
public:
Stack(Object & x)
{
Node * p = new Node(x);
topOfStack = p;
stacklen = 0;
}
void makeEmpty()
{
while(isEmpty())
{
Node * p = new Node();
p = topOfStack;
topOfStack = topOfStack -> next;
delete p;
}
}
bool isEmpty() const
{
if(NULL == topOfStack)
return true;
return false;
}
Object Top() const
{
return topOfStack -> data;
}
void Pop()
{
if(!isEmpty())
{
Node * p = topOfStack;
cout<<p->data<<" ";
topOfStack = topOfStack -> next;
delete p;
stacklen--;
}
}
void Push(const Object & x)
{
Node * p = new Node(x);
p ->next = topOfStack;
topOfStack = p;
stacklen++;
}
~Stack(){
Node * next ;
while(topOfStack)
{
next = topOfStack ->next;
delete topOfStack;
topOfStack = next;
}
} };
int main()
{ int a = 1;
Stack<int> dusk(a);
for(int i = 0 ; i < 5 ; i++)
{
dusk.Push(i);
}
for(int i = 0 ; i < 5 ; i++)
{
dusk.Pop();
}
}

  

最新文章

  1. java 用 jxl poi 进行excel 解析 *** 最爱那水货
  2. Http Status 参考
  3. 在Android中进行单元测试遇到的问题
  4. 关于Unity3D中Resources动态加载NGUI图片的方法
  5. 让ORACLE LIKE 时不区分大小写
  6. 从一个简单的Java单例示例谈谈并发
  7. 猪满满 购物APP
  8. SQLSERVER2008 显示列信息,包含扩展属性
  9. 蘑菇街 App 的组件化之路
  10. 挖掘微信Web版通信的全过程
  11. Spring + iBATIS完整示例
  12. FreeNAS插件打造ownCloud私有云网盘
  13. C/C++ 获取系统时间 到秒 || 到毫秒
  14. querySelectorAll选择器的js实现
  15. win10怎么录制电脑屏幕 电脑播放视频录制
  16. ios 在使用 SDWebimage UIButton setBackgroundimage
  17. IDA显示字节机器码
  18. ng-table
  19. debug fortran
  20. tmux不自动加载配置文件.tmux.conf

热门文章

  1. php-fpm启动不起来,php-fpm无法启动的一种情况
  2. linux系统镜像iso文件下载
  3. Docker command line 学习笔记
  4. Win10不能远程其他远程计算机的解决办法
  5. EOJ Monthly 2019.2 A. 回收卫星
  6. C# 委托 线程 窗体假死
  7. EPROCESS ETHREAD PEB重要成员
  8. JavaScript基础8——弹窗案例
  9. [冲昏头脑]IDEA中的maven项目中学习log4j的日志操作
  10. HTTP 几种常用的认证机制