#include<iostream.h>
class LinkStack;
struct Node
{
int data;
struct Node *next;
};
class LinkStack
{
public:
LinkStack(){top=NULL;}
~LinkStack(){};
void Push(int x);
int Pop();
void GetTop();
private:
Node *top;
Node *s;
};
void LinkStack::Push(int x)
{
s=new Node;
s->data=x;
s->next=top;
top=s;
}
int LinkStack::Pop()
{
int x;
Node *p;
if(top==NULL)throw"下溢";
x=top->data;
p=top;
top=top->next;
delete p;
return x;
}
void LinkStack::GetTop()
{
if(top->data!=NULL)
cout<<top->data<<endl;
}
int main()
{
LinkStack link;
link.Push(5);
link.Push(15);
link.GetTop();
cout<<"执行一次Pop操作"<<endl;
link.Pop();
link.GetTop();
return 0;
}
class LinkStack;
struct Node
{
int data;
struct Node *next;
};
class LinkStack
{
public:
LinkStack(){top=NULL;}
~LinkStack(){};
void Push(int x);
int Pop();
void GetTop();
private:
Node *top;
Node *s;
};
void LinkStack::Push(int x)
{
s=new Node;
s->data=x;
s->next=top;
top=s;
}
int LinkStack::Pop()
{
int x;
Node *p;
if(top==NULL)throw"下溢";
x=top->data;
p=top;
top=top->next;
delete p;
return x;
}
void LinkStack::GetTop()
{
if(top->data!=NULL)
cout<<top->data<<endl;
}
int main()
{
LinkStack link;
link.Push(5);
link.Push(15);
link.GetTop();
cout<<"执行一次Pop操作"<<endl;
link.Pop();
link.GetTop();
return 0;
}