发布网友 发布时间:2022-04-26 18:05
共3个回答
热心网友 时间:2022-04-14 17:46
只有在main函数里或全局变量申请的内存空间才会一直到程序结束才会去释放,在子函数里new的内存空间会在子函数的生命周期里存活,在该函数结束时会被自动回收,而在main函数或全局变量申请的内存空间一般情况下,你是不知道什么时候就可以不必使用到该资源,只有你在很确定的情况下,后面的程序不再需要使用该变量所占用的资源时,你才应该去delete它,由此可知你只要做到把必要的函数变量申请内存的操作放到子函数中,封装好,最后不要用到外部资源,做到高聚合低耦合的要求,这样就不必手动去释放资源了,模块的可重用性也会很好。。。热心网友 时间:2022-04-14 19:04
使用智能指针热心网友 时间:2022-04-14 20:38
用智能指针,STL中有个auto_ptr,可以试试,当然你也可以自己实现一个smart pointer。