我刚刚浏览了一篇解释 Wild 指针的文章。对于垃圾内存,它表示当一个指向内存对象的指针丢失时,即表示该内存项继续退出,但指向它的指针丢失了;当内存没有明确释放时会发生这种情况。我试图通过一个例子来理解这一点。这是我写的
#include <iostream>
using namespace std;
int q =12;
int point()
{
int *p;
p = &q;
//delete p;
}
int main()
{
point();
return 0;
}
因此,在上面的示例中,内存项 (q) 继续存在,但指向它的指针丢失了。我可能完全误解了它,但如果我理解正确,那么这个例子是否解决了上面给出的“垃圾内存”定义?如果是,那么我应该使用 delete p,对吗?