我對C++中的內存管理是如何工作有些困惑,我理解你什麼時候使用指針(新/刪除),但是在幀分配時我會丟失。C++內存管理與堆分配和幀分配的區別
說我有一個簡單的類(使用Qt類)
我使用指針
Demo *testInst = new Demo();
現在我明白了,當我打電話給它分配 「刪除testInst;」這是釋放,但我對框架分配超出範圍部分感到困惑。這是否意味着當我調用delete時,類中所有不是指針的類都會自動釋放,還是必須在Demo類的解構器中進行特定的內存管理?或者這意味着如果我離開這些類,那些變量就被釋放了?
我是C++的新手,來自.NET背景,因此我不是100%理解手動內存管理。
您在哪裏找到「幀分配」這個術語?除了上面的正常堆以外沒有其他任何標誌。 – bmargulies
我認爲它的一個術語更多地用在MFC中,所以對不起,如果我沒有得到正確的定義,我在Qt中做事情,所以我只是想知道非指針對象(QString)在指針對象(QString) *)我是否需要手動執行任何操作來釋放它們,或者是否刪除指針對象刪除沒有使用新指針分配的對象? – DrHouse