struct IMPERIAL{
int **my_map;//记录节点关系的矩阵
int numVar;//节点数
//函数的接口
void(*initialMap)(int ***, int );//初始化矩阵
void(*clearMap)(int ***, int );//释放内存
void(*calTime)(struct IMPERIAL const);//求解过程
};
void myClearMap(int ***my_map, int n)//释放内存
{
for(int i=0;i<=n;i++) free(*(*my_map + i));
free(*my_map);
}
struct IMPERIAL item;
item.clearMap=myClearMap;
item.initialMap=myInitialMap;
item.clearMap(&item.my_map,item.numVar+1);//free memory
最会根本没有成功释放内存,没有报错,可正常运行结束。