면접준비)Delegate,Func,Action의 차이

허윤·2025년 12월 22일

셋 다 함수 포인터인데 뭐가 다를까?
아래 표로 설명해보겠다.

종류반환타입매개변수
Delegatepublic event Delegate float AA(float a, int b)뒤의 괄호
ActionvoidAction의 제네릭타입
Func마지막 제네릭 타입Func의 제네릭타입

해당 함수포인터를 다룰땐 event키워드도 긴밀하니 event에 대해서도 알아두자

event 키워드란?

델리게이트를 “외부에서는 구독/해지만 가능하도록 제한하는
접근 제어 문법(언어 차원의 보호 장치)”이다.
선언 예시 : public event System.Action<float> action;

종류null 대입함수 추가,제거외부 호출
eventXOX
noneOOO

즉 event키워드는 타 클래스에서 자신이 등록한 함수 외에는 수정 할 수 없도록
캡슐화해주는 역할을 한다.

profile
C# 클라이언트 프로그래밍 지망

0개의 댓글