析构函数 是不是不能自己主动调用?
#include <iostream>
using namespace std;
class tt
{
private:
int age;
char *p;
public:
tt();
~tt();
void Show();
};
tt::tt()
{
age =100;
p = new char [100];
p[100-1] = '\0';
}
tt::~tt()
{
age =0;
delete [] p;
}
void tt::Show()
{
cout << age << endl;
cout << p << endl;
}
int main ()
{
tt pp;
pp.Show();
pp.~tt();
return 0;
}
这个代码有问题 因为以前构析函数都不是自己主动调用的。 所以没问题
如果pp.~tt() 不注视掉 vc 里面就有错误
gcc 里面 没错误
如果这个对象 我想立刻全删除干净 直接调用了构析函数以后 是不是所有的数据就全干净了
包括静态的变量?