class SeqStack
{
DataType data[MaxListSize];
int top;
public:
SeqStack(void)
{
top = 0;
}
~SeqStack() {};
void push(const DataType& item);
DataType Pop(void);
DataType Peek(void) const; //读栈顶数据元素并返回
int StackEmpty(void) const
{
return (top == 0);
}
int GetSize(void) const
{
return top;
}
void ClearStack(void)
{
top = 0;
}
};
void SeqStack::push(const DataType& item)
{
if (top == MaxListSize)
{
cout<<"堆栈已满"<<endl;
exit(0);
}
data[top] = item;
top++;
}
DataType SeqStack::Pop()
{
if (top == 0)
{
cout<<"堆栈以空"<<endl;
exit(0);
}
top--;
return data[top];
}
DataType SeqStack::Peek(void) const
{
if (top == 0)
{
cout<<"堆栈空!"<<endl;
exit(0);
}
return data[top - 1];
}
栈的C++实现
最新推荐文章于 2023-12-08 18:02:14 发布