C++ Builder 參考手冊(cè) ? System ? TObject ? DisposeOf
頭文件:#include <systobj.h>
命名空間:System
函數(shù)原型:
void __fastcall DisposeOf(void);
System::TObject::DisposeOf 是 System::TObject 的成員函數(shù),強(qiáng)制銷毀對(duì)象。
- 桌面版本的 DisposeOf 和 Free 相同,桌面版本的 TObject 沒(méi)有 RefCount 和 Disposed 屬性;
- 移動(dòng)版本的 TObject 額外有 RefCount 和 Disposed 屬性用于 ARC 內(nèi)存管理,雖然調(diào)用了析構(gòu)函數(shù),但是 RefCount 不等于 0 不會(huì)釋放內(nèi)存,而 DisposeOf 就是強(qiáng)制銷毀對(duì)象:RefCount 清零,Disposed 等于 true,并且釋放內(nèi)存。
以下引用幫助里面的描述:
根據(jù) Delphi 編譯器,DisposeOf 有兩個(gè)不同版本:
- 桌面版本 (DCC32, DCC64, DCCOSX) 和 Free 相同;
- 移動(dòng)版本 (DCCIOS32, DCCIOSARM) 有雖然析構(gòu)函數(shù)和桌面版本調(diào)用次數(shù)一樣,但是內(nèi)存管理會(huì)根據(jù) ARC 機(jī)制 (Automatic Reference Counting mechanism) 確定是否需要釋放占用的資源。
參考:
- System::TObject::Free
- System::TObject::FreeInstance
- System::TObject::NewInstance
- System::TObject
- VCL 類繼承關(guān)系
C++ Builder 參考手冊(cè) ? System ? TObject ? DisposeOf