我对这个概念很陌生,我很困惑,如果悬空指针是一个指向内存位置的指针,该内存位置指向已释放或删除的内存,那么在这种情况下为什么它仍然能够调用该函数test()
#include <stdio.h>
#include <iostream>
#include <stdlib.h>
using namespace std;
class MyClass{
public:
void test(){
cout<< "just checking"<<endl;
}
};
int main(int argc, char **argv)
{
MyClass *p ( new MyClass());;
MyClass *q = p;
delete p;
q->test();
p = NULL;
q->test();
return 0;
}
任何帮助,将不胜感激。