栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

顺序栈-构造函数与析构函数

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

顺序栈-构造函数与析构函数

C++实现顺序栈

#include 
using namespace std;
class SeqStack
{
public:
    SeqStack(int size = 10)
    {
        cout<
        cout<
        if(full())
            resize();
        _pstack[++_top]=val;
    }
    void pop()
    {
        if(empty()) return;
        --_top;
    }
    int top()
    {
        return _pstack[_top];
    }
    bool empty(){
        return _top == -1;
    }
    bool full(){
        return _top == _size -1;
    }

private:
    int *_pstack;
    int _top;
    int _size;

    void resize()
    {
        int *ptmp = new int[_size*2];
        for(int i=0;i<_size;i++)
        {
            ptmp[i]=_pstack[i];
        }
        delete [] _pstack;
        _pstack = ptmp;
        _size*=2;
    }
};
SeqStack gs;
int main() {
//    SeqStack *ps =new SeqStack(60);
//    ps->push(70);
//    ps->push(80);
//    ps->pop();
//    cout<<"s.top():   "<top()<
        s.push(rand()%100);
    }
    while(!s.empty())
    {
        s.pop();
    }

    SeqStack s1(50);
    s1.push(30);

    return 0;
}

此处注意
1.先构造后析构
2.全局类再程序结束后析构

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/966031.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号