我在讀this後,我想澄清,我是否需要顯式刪除動態創建的對象的成員變量?C++析構函數的成員變量?
例如,我有一個類帶有兩個成員變量,
class pointCloud
{
public:
pointCloud();
void addPoint(int);
point getPoint(int);
private:
int id;
std::vector<point> pointArray;
};
,然後我在主製作一個動態實例...
int main()
{
pointCloud* cloud = new pointCloud;
cloud->addPoint(8);
delete cloud;
}
我的理解是,當調用delete cloud;
時,'id'和'pointArray'變量將自動從內存中刪除/釋放。它是否正確?或者我需要編寫一個析構函數來顯式刪除這些成員變量?
是的,正確的..析構函數是需要釋放動態分配的內存 – SimpleGuy