顺序栈的模板类实现

从数据结构的角度看,栈也是线性表的一种,其特殊性在于栈其基本的操作还是依靠线性表实现的。 栈只允许在栈顶进行插入和删除操作。 栈的存储方式也分顺序栈和链栈两种,个人觉得既然只运行对栈顶进行操作,链栈没什么意义啊。class Stack{public: Stack(int size = Stack_init_size); ~Stack(); void ClearSt
摘要由CSDN通过智能技术生成

从数据结构的角度看,栈也是线性表的一种,其特殊性在于栈其基本的操作还是依靠线性表实现的。
这里写图片描述
栈只允许在栈顶进行插入和删除操作。
栈的存储方式也分顺序栈和链栈两种,个人觉得既然只运行对栈顶进行操作,链栈没什么意义啊。

#ifndef STACK_H_
#define STACK_H_
template <typename T>
class Stack
{
public:
    Stack(int size = Stack_init_size);
    //构造函数
    ~Stack();
    Stack(const Stack<T> &s);
    //拷贝构造函数
    const Stack<T>& operator=(const Stack<T> &s);
    //赋值构造函数
    void ClearStack();
    //清空栈
    bool StackEmpty();
    //若栈为空返回TRUE否则返回FALSE
    int StackLength();
    //返回栈的长度,即入栈元素个数
    bool GetTop(T &elem);
    //若栈不空,用elem返回栈顶元素,并返回true,否则返回ERROR
    
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值