나는 델파이에 근본적인 의심을 가지고있다. 내가 디자인 타임에 구성 요소를 유지할 때, 내가 어떤 오류하지 않아도 내가 코드를 다음 쓰기 예를 들어 TADOConnectuion과 버튼 클릭에 대해 말하기를 :델파이의 "자유"근본적인 것
begin
ADOConnection.Free; //No error
ADOConnection.Free; //No error
ADOConnection.Free; //No error
end;
을하지만 follwos로 런타임에 동일한 개체를 만드는 경우 I 나는 아래와 같이 객체를 생성하더라도 오류 "... 액세스 위반"나는이 같은 오류가
begin
ADOConnection := TADOConnection.create(self);
ADOConnection.Free; //No error
ADOConnection.Free; //Getting an "Access Violation..." error
end;
를 얻을 :
ADOConnection := TADOConnection.create(nil);
그냥 그런 행동 뒤에 이유를 알고 싶습니다, 즉 디자인 타임에 구성 요소를 유지할 때 오류가없는 이유는 무엇입니까?
관련을 : 여기
는 디자인 타임 구성 요소에 대한 참조 행동이-설계 시간 구성 요소를 특정하지 방법을 보여TButton
구성 요소를 사용하여 예제 nil 내 개체?] (http://stackoverflow.com/questions/8036388/delphi-why-doesnt-freeandnil-really-nil-my-object) – CodesInChaosVishal, 공손한 수식을 추가하는 것은 유용하지 않습니다 (실제로는 권장하지 않습니다). 여기에 귀하의 질문과 답변에. – mghie