我想理解析構函數。我有以下問題。在下面的代碼片段中,爲什麼對象b2超出了Destructor的範圍?析構函數內的對象範圍
class D
{
B *b1;
public:
D()
{
b1 = new B;
B *b2=new B;
cout<<"D's Constructor Invoked"<<endl;
//delete b2;
}
~D()
{
delete b1;
delete b2; // error : undeclared identifier
cout<<"D's Destructor Invoked"<<endl;
}
};
B只是一個簡單的類。
謝謝
所以構造沒有正常功能的不同在這方面。我認爲Destructor應該知道構造函數的變量,因爲它們在類中綁定 –