VS的Debug模式没问题,而Release模式却有问题

在Debug模式下程序执行没有问题,包括内存泄露也没问题,而到matlab调用debug模式下的DLL,却存在一些问题!我发现在vs的Release模式却有问题,从这里可以看出,matlab调用VS的DLL,最好将VS在release模式下生成DLL再供matlab调用。主要发现问题所在有以下几处,1.对于程序中的某些变量赋初值,指针赋NULL,以避免一些问题。2.我发现我程序用了realloc这个函数重新为已经分配的内存,却经常出问题,对于项目中尤其注意不要使用!如果频繁操作及有可能分配内存失败,那么如果不去检测是否分配到,那么会造成各种错误,包括内存泄露,因为你原先的并没有释放,后来我都改成vector分配在栈区,就没有问题。不知道啥原因在debug模式用realloc没有问题,我调试发现值都没问题,但是到release模式下,发现realloc有问题,原来存储的值都发生变化了,这个问题好奇怪!

你可能感兴趣的:(VS的Debug模式没问题,而Release模式却有问题)