#include
<
stdio.h
>
#include
<
stdlib.h
>
#include
<
string
.h
>

template
<
class
T
>
T
**
darray_new(
int
row,
int
col,
int
size)

...
{
T **arr;

arr = (T **) malloc(sizeof(T *) * row + size * row * col);
if (arr != NULL)

...{
T *head;

head = (T *) arr + sizeof(T *) * row;
memset(arr, 0, sizeof(T *) * row + size * row * col);
while (row--)
arr[row] = head + size * row * col;
}
return arr;
}

template
<
class
T
>
void
darray_free(T
**
arr)

...
{
if (arr != NULL)
free(arr);
}





























