我試圖理解來釋放指向內存中的有道結構刪除數據。在這種情況下,指針指向結構的新實例。一個例子如下所示正確使用在一個指針指向
的結構是這樣的:
struct MyData
{
unsigned short int MYID;
unsigned short int MYCMD;
};
定義如下。
MyData* injdataRx;
myDataPtr = new MyData; // create new instance
...做一些東西加載到指針指向的東西,即。田野。
現在,如果當我與結構做了,我想,以確保什麼指針指向(分配的區域)被釋放,我這樣做。
delete (myDataPtr);
這是否釋放由「新」創建存儲在它知道,因爲myDataPtr是一個指向類型MyData的,它會釋放的sizeof MyData的?那會發生什麼?
澄清任何幫助表示讚賞。
「*這是否免費由創建內存中的‘新’在它知道,因爲myDataPtr是鍵入MyData的,它會釋放的sizeof MyData的指針*?」是的,以及調用對象的析構函數。 – ildjarn 2012-02-16 01:19:48
就是這樣。困難的部分是記住總是刪除它。或者使用智能指針。 – Duck 2012-02-16 01:22:02