005
25.03.2004, 14:06 Uhr
RHBaum
|
performant und C++, faellt mir im moment nur std::vector ein ... und die Indizies einfach auf 3 dimensionen umrechnen .... also sowas wie :
C++: |
template<class T> class 3DArray { private: typedef std::vector<T> Array_T; public: 3DArray() { ...}; 3DArray(size_t adimX,size_t adimY,size_t adimZ) { ...}; 3DArray(const 3DArray & rx) { ...}; virtual ~3DArray();
size_t getDimX() const { ...}; size_t getDimY() const { ...}; size_t getDimZ() const { ...};
T& operator[](size_t adimX,size_t adimY,size_t adimZ) { ...}; const T& operator[](size_t adimX,size_t adimY,size_t adimZ) const { ...};
private: Array_T m_Array; size_t m_dimX; size_t m_dimY; size_t m_dimZ; };
|
Die implementation ueberlass ich mal deiner Phantasie ... so wuerde ich rangehen ....
Ciao ... |