《C++》手动实现栈和队列

目录

一、栈

代码实现:

执行结果:

二、队列

代码实现:

执行结果:


一、栈

代码实现:

#include 

using namespace std;
template
class stack
{
private:
    T *data;
    int top;
public:
    stack(int size = 10)
    {
        data = new T[size];
        top=-1;
    }
    ~stack()
    {
        delete []data;
        data=NULL;
    }

    //判空
    bool empty()
    {
        return this->top==-1;
    }
    //判满
    bool full()
    {
        return this->top==9;
    }
    //入栈
    void push(const T val)
    {
        //判满
        if(this->full())
        {
            return;
        }
        data[top++]=val;
    }
    //出栈
    void pop()
    {
        if(this->empty())
        {
            return;
        }
        //指针前移
        --top;
    }
    T &at(int index)
    {
        if(index<

你可能感兴趣的:(c++)