它们会成为内存泄漏还是c ++意识到它们没有针对它们的指针并释放内存?如果必须删除它们,我只需使用删除命令吗?
答案 0 :(得分:2)
c ++是否意识到他们没有针对他们的指针并释放内存?
C ++没有“意识到”任何这样的事情。没有内置的垃圾收集器。
如果您使用new
分配内存并且未通过对delete
的相应调用释放内存,则会导致内存泄漏。
答案 1 :(得分:0)
Cody是正确的,C ++没有垃圾收集器,所以当指向对象的指针丢失时你会发生内存泄漏。
C ++确实在std库中有一些东西来解决这个问题。如果对象不再指向任何std::shared_ptr
,std::shared_ptr
将自动删除该对象。