德爾福有一個基本的疑問。當我把任何部件在設計時,例如說TADOConnectuion和按一下按鈕,即使我寫下面的代碼,然後我沒有得到任何錯誤:德爾福中「免費」的基本原理
begin
ADOConnection.Free; //No error
ADOConnection.Free; //No error
ADOConnection.Free; //No error
end;
但是,如果我在運行時創建相同的對象follwos我得到「訪問衝突...」錯誤
begin
ADOConnection := TADOConnection.create(self);
ADOConnection.Free; //No error
ADOConnection.Free; //Getting an "Access Violation..." error
end;
我得到同樣的錯誤,即使我創建對象如下:
ADOConnection := TADOConnection.create(nil);
只是想知道後面這種行爲的原因,即。爲什麼在設計時保留組件時沒有錯誤?
相關:[爲什麼不FreeAndNil * *真nil我的對象?](http://stackoverflow.com/questions/8036388/delphi-why-doesnt-freeandnil-really-nil-my-object) – CodesInChaos
Vishal,它沒有用(實際上它是灰心)添加禮讓公式在這裏你的問題和答案。 – mghie