15 #include <sys/types.h>
27 virtual int getM()
const = 0;
28 virtual int getN()
const = 0;
29 virtual int getO()
const = 0;
33 static T***
New3D(
int m,
int n,
int o,
bool extra =
false )
38 array =
new T**[m + ( extra ? 1 : 0 ) ];
39 array[0] =
new T*[m * n + ( extra ? 1 : 0 )];
40 array[0][0] =
new T[m * n * o + ( extra ? 1 : 0 )];
41 for(
int i = 0; i < m + ( extra ? 1 : 0 ); ++i )
45 array[i] = array[i - 1] + n;
46 array[i][0] = array[ i - 1 ][0] + n * o;
48 for(
int j = 1; j < n + ( extra ? 1 : 0 ); ++j )
50 array[i][j] = array[i][j - 1] + o;
I3D(const I3D &)
Definition: I3D.h:71
virtual int getM() const =0
virtual int getN() const =0
virtual ~I3D()
Definition: I3D.h:22
static T *** New3D(int m, int n, int o, bool extra=false)
Definition: I3D.h:33
I3D()
Definition: I3D.h:70
virtual int getO() const =0
virtual T *** getPtr3d()=0
static void Delete3D(T ***array)
Definition: I3D.h:58
virtual T ** getPtr2d()=0