#ifndef __cxz_darray_h__ #define __cxz_darray_h__ #include "cxz_darray_base.h" namespace CNORXZ { template class DArray : public MDArrayBase { public: typedef DArrayBase AB; typedef typename AB::const_iterator const_iterator; using DArrayBase::operator[]; using MDArrayBase::operator[]; private: vector mCont; public: DEFAULT_MEMBERS(DArray); DArray(const RangePtr& range); DArray(const RangePtr& range, const vector& vec); DArray(const RangePtr& range, vector&& vec); virtual const T* data() const override; virtual T* data() override; virtual const_iterator cbegin() const override; virtual const_iterator cend() const override; virtual bool isView() const override; }; } #endif