#ifndef __cxz_darray_h__ #define __cxz_darray_h__ #include "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