在成员函数中调用delete this会出现什么问题?对象还可以使用吗?
在类的对象内存空间中,只有数据成员和虚函数指针,并不包含代码内容,类的成员函数单独放在代码段中,在调用成员函数时,隐含传递一个this指针,让成员函数知道当前是哪个对象在调用它,如果调用delete this删除,类的对象内寸空间被释放,delete this之后,进行其他的任何函数调用,只要不涉及this指针的内容,都可以正常运行。一旦涉及到this指针,如操作数据成员,调用虚函数表,就会出现问题。
在类的对象内存空间中,只有数据成员和虚函数指针,并不包含代码内容,类的成员函数单独放在代码段中,在调用成员函数时,隐含传递一个this指针,让成员函数知道当前是哪个对象在调用它,如果调用delete this删除,类的对象内寸空间被释放,delete this之后,进行其他的任何函数调用,只要不涉及this指针的内容,都可以正常运行。一旦涉及到this指针,如操作数据成员,调用虚函数表,就会出现问题。