Q&A

  • procedure proTest(var s1:String; out s2:String); 에서 Var, Out 차이점과 Procedure과 Function의 적절한 사용 예?
안녕하세요. 델파이를 공부 한지... 3주째 가는 초보입니다.

procedure proTest(var s1:String; out s2:String); 에서 Var, Out 차이점이 무엇인가요?

아무리 책을 봐도 설명을 못찾겠네요. Var 는 알겠는데.... Out은 Var과 같은 건가요?
소스에 Var을 Out로 고쳐도 결과는 똑같이 나오더라구요.
어떤 차이가 있는건가요? 무엇이 다르죠?


그리고
Procedure과 Function의 적절한 사용 예?

Procedure와 Function 둘중 가장 크게 다른 점은 리턴을 할수 있느냐 없느냐 인데...
Procedure는 포인터와, Var 를 사용하면 리턴을 하지 않아도 되자나요...

Procedure와 Function 의 사용 예를 줌 알려주세요.
이건 이럴때 쓰는 거고 이건 이럴때 쓰는거다. 이렇게요!


델파이 혼자 공부 하는데 힘들어요. 많이 들 좀 알려주세요 ^^
1  COMMENTS
  • Profile
    최용일 2008.01.15 06:03
    out은 출력전용입니다. var와 달리 메모리 할당된 객체나 포인터 변수를 입력할 시 함수 호출전에 메모리가 해제됩니다.

    procedure와 function의 큰 차이점은 아시는 대로 리턴값의 유무죠...
    또 한가지 차이점은 function은 리턴값이 있기 때문에 대입문의 오른쪽에 사용할 수 있죠...

    <!--CodeS-->
    var
      Value: Integer;
    begin
      Value := TestFunc(Param);
    end;
    <!--CodeE-->