c++顺序栈中这两种出栈的写法有什么区别吗??
template <class T>
T SeqStack<T>::Pop() //出栈操作,将栈顶元素弹出
{
/*T x;
if (Empty())throw"下溢";
x=data[top--];
return x;*/
if (top == -1)throw"下溢";
return data[top--];
}
c++顺序栈中这两种出栈的写法有什么区别吗??
template <class T>
T SeqStack<T>::Pop() //出栈操作,将栈顶元素弹出
{
/*T x;
if (Empty())throw"下溢";
x=data[top--];
return x;*/
if (top == -1)throw"下溢";
return data[top--];
}
如果empty的实现代码是
int empty()
{
return top == -1;
}
那么两者没有区别
但是写empty可读性更好