编程语言
首页 > 编程语言> > C++ArrayStack

C++ArrayStack

作者:互联网

#if 1
#ifndef _ARRAY_STACK_H_
#define _ARRAY_STACK_H
#include "arraylist.h"


template <typename T, typename _Container = arraylist<T>>
class arraystack{
protected:
    _Container c;
    using uint_32 = unsigned int;
public:
    explicit arraystack(const _Container &c) :c(c){ }
    arraystack() :c(){ }
    bool empty() const{ return c.empty(); }
    const _Container &getContainer() const{ return c; }
    uint_32 size() const{ return c.size(); }
    void push(const T &value){ c.push_back(value); }
    void pop(){ if(!empty())c.pop_back(); }
    const T &top() const{ return c.back(); }
    T &top(){ return c.back(); }
    uint_32 capacity() const{ return c.capacity(); }
    void clear(){ c.clear(); }

};


#endif // !_ARRAY_STACK_H_

#endif

 

标签:return,back,C++,ArrayStack,Container,ARRAY,empty,const
来源: https://www.cnblogs.com/MasterYan576356467/p/11167358.html