I have a basic function that creates two-dimensional array and frees it.But when I test my program with leak detector it gives me leakage output.
template <class T1>
T1**
CreateMatrix(int row ,int col)
{
int i;
T1** matrix;
matrix = (T1**) malloc(row*sizeof(T1*));
for (i=0; i<row; i++)
matrix[i]=(T1*) malloc(col*sizeof(T1));
return matrix;
}
template <class T1>
void FreeMatrix(int row,T1** matrix)
{
int i;
for (i=0; i<row; i++)
free(matrix[i]);
free(matrix);
}
int** my_matrix=CreateMatrix<int>(3,2);
FreeMatrix<int>(3,my_matrix);