进栈操作实际上就是在单链表插入头结点,出栈操作实际上是单链表删除头结点。
#include<iostream>
using namespace std;
template <class T>
struct node
{
T value;
node<T> * next;
node():next(NULL) {
}//构造函数
node(T e):next(NULL),value(e) {
}
};
template<class T>
class stack
{
int cnts;
node<T> *head;
public:
stack()