昨天,调试代码遇到了上述错误,纠结好久,一行一行的调试,发现一个中间对象释放时导致内存错误,果断转到定义处查看,发现该类声明时并没有问题。
接着调试,发现memset时,写入了超过数组长度的值,但程序这里并未出错,而是在释放该值时报错(百思不得其解)。
CRT detected that the application wrote to memory after end of heap buffer
多是中间对其进行了一些操作,在程序结束处,释放内存的时候,引起错误:
下面是查到了资料,还比较有用:
另外查到了一个坚持内存错误的方法:
_ASSERTE( _CrtCheckMemory( ) );放于内存操作语句的后面便能立即Assert一个内存错误问题