자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi 안녕하세요. type 문에서 함수에 대해 여쭤보고 싶어요!
2018.01.25 18:09
type func = function(X:Integer): Integer; 와 같이 선언할 수 있더라고요.
근데 이게 구현부도 없고 일반함수와 어떤 차이를 가지는지 잘 모르겠어요.
일반함수의 경우
function func(X:Integer) : integer; 처럼 선언, 정의하면 되는데
저렇게 쓰면 무슨의미가 있을까요? 부탁드려요^^
아 그리고 책의 예제를 보니 위와 같이 선언한 뒤
var
f : func;
p: Pointer;
n: Integer;
begin
f:=func(p);
func(p) := f;
@f := p;
p := @f;
n := f(n);
n := func(p)(n);
end;
와 같이 사용할 수 있더라고요. 이게 이해가 잘 안되서 질문드렸어요!
Delphi 안녕하세요. type 문에서 함수에 대해 여쭤보고 싶어요!
2018.01.25 18:09
type func = function(X:Integer): Integer; 와 같이 선언할 수 있더라고요.
근데 이게 구현부도 없고 일반함수와 어떤 차이를 가지는지 잘 모르겠어요.
일반함수의 경우
function func(X:Integer) : integer; 처럼 선언, 정의하면 되는데
저렇게 쓰면 무슨의미가 있을까요? 부탁드려요^^
아 그리고 책의 예제를 보니 위와 같이 선언한 뒤
var
f : func;
p: Pointer;
n: Integer;
begin
f:=func(p);
func(p) := f;
@f := p;
p := @f;
n := f(n);
n := func(p)(n);
end;
와 같이 사용할 수 있더라고요. 이게 이해가 잘 안되서 질문드렸어요!
type func = function(X:Integer): Integer;
위 코드는 func라는 함수 타입을 정의하는 코드입니다.
보통 TIntFunc = function(X: Integer): Integer와 같이 앞에 Type의 T를 붙이는게 일반적입니다.
예제의 경우 사용방법을 표시한것입니다.
func 타입으로 함수를 선언 및 구현 후 f:func 변수에 함수를 할당하고 전달하고 호출할 수 있습니다.