class finder
{
public:
finder();
~finder();
}
int _tmain(int argc, _TCHAR* argv[])
{
finder* pfind = new finder(L"test");
finder find(L"test2");
system("PAUSE");
return 0;
}
我知道find的析構函數將在程序退出後調用,但pfind的析構函數將不會被調用。我的問題是爲什麼?我應該加指向對象及其析構函數
delete _pfind;
返回0之前嗎?
你不應該添加'delete',你應該刪除'new'。 – avakar 2012-04-01 16:19:21
你的代碼充滿了錯誤;如果你要發佈片段,你應該儘可能使它們正確。 – meagar 2012-04-01 16:20:46
@avakar學習'new'和'delete'沒有什麼錯。當然,如果你不喜歡它們,你可以找到避免它們的方法,但實際使用它們並使它們適應並從錯誤中學習並決定你是否喜歡它們是沒有問題的。 – 2012-04-01 16:25:12