码迷,mamicode.com
首页 > 编程语言 > 详细

C++ArrayStack

时间:2019-07-11 00:45:07      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:template   signed   void   ret   ack   ted   c++   efi   ++   

#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

 

C++ArrayStack

标签:template   signed   void   ret   ack   ted   c++   efi   ++   

原文地址:https://www.cnblogs.com/MasterYan576356467/p/11167358.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!