我试图使用指针使用'new'分配内存来访问类中的函数。但我注意到了一种不同的行为。有一次,使用'delete'释放对象并引用NULL,它仍然可以访问函数,但不能访问变量。当我尝试这样做时,我收到Segmentation Fault。谁能解释一下?提前谢谢!
#include <iostream>
using namespace std;
class A
{
public:
int ba;
A()
{
ba=10;
}
void func1()
{
cout<<"func1 is called\n";
}
void func2()
{
cout<<"func2 is called\n";
}
};
int main()
{
A *ptr=new A();
ptr->func1();
cout<<ptr->ba;
delete ptr;
ptr=NULL;
ptr->func2();
//cout<<ptr->ba;
return 0;
}