#ifndef __DARRAY_H #define __DARRAY_H #include #include #include #define DEFAULT_EXPAND_RATE 10 class DArray { private: int end; int _max; //size_t size; size_t _expand; void **data; public: DArray(size_t data_size, size_t init_size); ~DArray(); void clear(); void clead_idx(int idx); int expand(); int resize(size_t size); int push(void *val); void *pop(); int set(int idx, void *val); void* get(int idx); void *last(); void *first(); int count(); int max(); }; #endif