https://blog.csdn.net/wjf1997/article/details/83041666
https://blog.csdn.net/chen134225/article/details/81221382 析构函数何时调用
https://www.cnblogs.com/418ks/p/10743902.html 野指针
解决以下问题时有参考以上链接。
如何避免内存重复释放:
表现:指针的值为0xfefe 通常代表重复释放;
解决方法:多个类指针指向同一个内存时,是要确保最后使用的指针来释放内存,其余指针要及时置空;
注意:当在函数中new了一个类,A *a = new A; ,且将a分配的内存空间让其他全局指针指向时,此内存空间是由其他指针来释放(通过delete)。new出来的空间是保存在堆上的,a指针是保存在栈上,A离开作用域后会自动析构或者说自动消失,不会有野指针的问题。
野指针:
表现:指针的值为0xcdcd
解决方法:只能查看该指针的引用,一个一个的调查。
无非是定义指针及时置空;确保指针能够释放到指定内存,不由该指针释放时及时置空;指针不要瞎指,尤其不要指局部变量;