Q&A

  • 꾸벅.. nil 이라는 예약어의 용도는 어케되나요..???^^
안녕하세요.. 많은 도움을 받고 있는 신삥입니당...

쩝 전 도와드릴 일이 없어서....^^

질문있습니당..

코드를 분석하고 있는데요.., 음.. nil 이라는 예약어를 무지 무지

많이 많이 보고 있습니다...

도움말을 찾아보니.. 어떤 주소값을 가지는 의미가 있는것 같은데..

음 코드상에는 그게 아닌것 같고...제가 잘 몰러서요..



nil 이라는 예약어가 어떤 경우에 쓰이는지..좀 알수 있을까요?

제가 보는 코드 적어 보겠습니다.. 혹 도움이 될까 하고요...^^

procedure TfrmMain.HemisphereButton4Click(Sender: TObject);

begin

FrmDB.테이블명.MasterSource := nil;

-----중간생략-----

여기선 어떤 의미가 있을까요...? 전 잘 모르겠어요.....

이리 질문만 드려서 송구합니다...^^ .. 행복한 나날 되세요...꾸벅..











1  COMMENTS
  • Profile
    전철호 1999.06.07 20:01
    정성호 께서 말씀하시기를...

    > 안녕하세요.. 많은 도움을 받고 있는 신삥입니당...

    > 쩝 전 도와드릴 일이 없어서....^^

    > 질문있습니당..

    > 코드를 분석하고 있는데요.., 음.. nil 이라는 예약어를 무지 무지

    > 많이 많이 보고 있습니다...

    > 도움말을 찾아보니.. 어떤 주소값을 가지는 의미가 있는것 같은데..

    > 음 코드상에는 그게 아닌것 같고...제가 잘 몰러서요..

    >

    > nil 이라는 예약어가 어떤 경우에 쓰이는지..좀 알수 있을까요?

    > 제가 보는 코드 적어 보겠습니다.. 혹 도움이 될까 하고요...^^

    > procedure TfrmMain.HemisphereButton4Click(Sender: TObject);

    > begin

    > FrmDB.테이블명.MasterSource := nil;

    > -----중간생략-----

    > 여기선 어떤 의미가 있을까요...? 전 잘 모르겠어요.....

    > 이리 질문만 드려서 송구합니다...^^ .. 행복한 나날 되세요...꾸벅..

    >

    >

    >

    >

    >



    델파이에서의 nil은 객체를 할당할 때 객체 포인터를 갖지 않는다는

    의미입니다.



    FrmDB.테이블명.MasterSource := nil;

    여기에서도 FrmDB.테이블명.MasterSource에 데이타 소스가 할당되어져

    있었다고 하면

    위와 같이 코딩을 할 경우 FrmDB.테이블명.MasterSource에 데이타 소스

    를 nil로 할당함으로써 FrmDB.테이블명.MasterSource는 더이상 데이타 소스를

    갖고 있지 않다는 의미 이겠지요.



    비록 이부분에서만 쓰이는 것이 아니라 Event에서도 사용할 수 도 있습니다.

    예를 들어 에디트 박스 OnChange 이벤트에 kkChange라는 이벤트가 할당

    되었다고 가정할때 어느 순간 부터는 OnChange이벤트를 사용하지 못하게

    막을 필요가 있을 것입니다.

    이때 폼 디자이너에서는 이벤트를 할당하고 프로그램을 짜지만

    런 타임시에 그이벤트를 못쓰게 만들려면 어쩔게 해야 할지 궁금해 하는

    사람들이 많이 있습니다.

    이때도 마찬가지로 OnChangeㅇ= nil값을 할당하면되고

    다시금 ㅎOnChange를 할성화 시키려면 OnChange = kkChange라고

    할당 하면 되겠지요.



    더 자세하게 알려드리고 싶지만 말 주변이 없어서리..

    아무튼 도움이 되었으면 합니다.