FormDestroy和Destroy都是執行Free時執行的兩個函數
FormDestroy是事件, Destroy是析構函數.FormDestroy是在Destroy中執行的事件,是為了友善程式員寫釋放資源的代碼.
在程式中要麼用直接用Destroy釋放,要麼用FormDestroy事件,不要混合使用.
都知道寫Destroy的一般都是
destructor Destroy()
begin
CdsMain.Free;
inherited destroy;//保證基類的資源釋放, FormDestroy是在TCustomForm中的事件
end;
是以FormDestroy是發生在Destroy的最後一部份,如果你在Destroy中使用了CdsMain.Free
而你再想在FormDestroy中寫上CdsMain.Cancel,必然就會發生AV錯誤.
寫給初學者.....
D10.Mofen