선생님 안녕하세요!
int (*fp)(int, int); // int형 반환값, int형 매개변수 두 개가 있는 함수 포인터 fp 선언
delegate int CompareDelegate(int param1, int param2);
델리게이트 선언 시, C언어의 함수 포인터와 다르게 매개변수명(param1, param2)까지 넣어주는 이유가 따로 있을까요?
생각해보면 A라는 사람이 만든 CompareDelegate에
B라는 사람이 만든 아래 메서드를 CompareDelegate에 대입하는 경우를 생각해보면
int DescendingCompare(int i1, int i2)
{
if (i1 == i2) return 0;
return (i1 - i2) > 0 ? 1 : -1;
}
매개변수의 타입과 리턴 타입만 필요한 것 같은데...
굳이 사용하지 않는 변수명까지 델리게이트 선언 시 넣어주는 이유가 궁금합니다.
항상 답변해 주셔서 감사합니다!
[최초 등록일: ]
[최종 수정일: 5/21/2022]