用C++建立一个顺序栈并且包括(进栈,退栈和读栈顶),急用

来源:百度知道 编辑:UC知道 时间:2024/06/24 08:12:02

//================================LStack.h======================================
//模板栈类接口的定义
//Stack: 类的构造函数
//~Stack: 类的析构函数
//empty: 判空函数
//push: 压栈函数
//top: 取栈顶元素
//pop: 将栈顶元素弹出
#include "stdafx.h"
#include <iostream>
//#include <iomanip>
#ifndef LSTACK
#define LSTACK
using namespace std;
template <class ElementType>
class Stack
{
// 栈的共有接口
public:
//构造函数
Stack():myTop(0){}
//析构函数
~Stack();
//判空函数
bool empty() const;
//压栈函数
void push(ElementType value);
//取用栈顶元素
ElementType top()const;
//弹出栈顶元素
void pop();
//私有数据成员
private:
//节点的定义
class Node
{
public:

ElementType data;
Node * next;
Node(ElementType value,Node* ptr=0)//节点构造函数
:data(value),next(ptr)
{
}
};
typedef Node * NodePtr;
NodePtr myTo