//头文件#include "Stack.h"
#ifndef STACK_H_
#define STACK_H_
const int Max = 100;
template <class T>
class Stack {
public:
Stack();
void Push (const T &item);
T Pop();
bool Stackempty() const;
private:
T s[Max];
int top;
};
#endif
// 源文件
template <class T>
Stack<T>::Stack() {
top = -1;
}
template <class T>
void Stack<T>::Push(const T &item) {
if (top == Max - 1)
cout << "栈满溢出\n";
++top;
s[top] = item;
}
template <class T>
T Stack<T>::Pop() {
T temp;
if (top == -1)
cout << "栈为空,不能出栈操作\n";
temp = s[top];
--top;
return temp;
}
template <class T>
bool Stack<T>::Stackempty() const{
if (top == -1)
return true;
else
return false;
}