Delphi 클래스의 기본 영역

1228 단어 Delphi
//              :   、  、  
//            :

      (   published)

  private

  protected

  public

  published




질문: 무제한 구역이 기본적으로published인 이상property ABC:string을 넣습니다.안에 있어도 돼요?대답: 꼭 그렇지는 않습니다. TPersistent와 계승된 클래스만 가능합니다.TPersistent에 {$M+} 컴파일 명령이 있기 때문입니다.즉, 컴파일 명령 {$M+}이 열린 후에만 기본 구역은published 구역과 같습니다.그렇지 않으면 공공 구역과 같다. 물론 속성 정의는 공공 구역에서도 사용할 수 있지만 디자인할 때(Object Inspector)는 볼 수 없다(DFM 파일에 저장할 수 없다).
기본 영역은 일반적으로 컨트롤에 대한 설명만 있고 DFM 파일에 해당하는 엔티티 대응이 있습니다(테스트를 통해 확인).그렇지 않으면 저장할 때 삭제를 알립니다.하지만 억지로 보류하면 아무리 Build라도 괜찮다.기본 영역 성명 변수는 컴파일 오류를 표시합니다.
이런 문제들은 모두 세부적인 것이기 때문에 평소에 IDE가 익숙해져서 오히려 주의한 적이 없다.그러나 중요한 지식점, 특히TPersistent와 모든 계승 클래스는 기본 구역이published이므로 주의해야 한다.
 
참조:
http://www.cnblogs.com/del/archive/2008/01/14/1038118.html

좋은 웹페이지 즐겨찾기