델리게이트를 조금더 간편하게 쓸 수 있는 Action과 Func이 있다. 이 두개의 차이 점은 반환형이 있는냐 없느냐 이다. 우선 사용하려면 using System을 선언 해야한다. Func는 선언시 3번째 자리가 반환 타입이다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System; // Action, Func을 사용하기 위해서 필요함
public class Test : MonoBehaviour
{
// 내부적으로 델리게이트 선언부가 미리 만들어져 있기 때문에 델리게이트보다 쓰기 편하다.
// 간편한 델리게이트라고 보면 된다.
Action<int, int> myAction;
// 3번째는 리턴 받을 자료형이다.
// 반환 값이 있는 간편한 델리게이트라고 보면 된다.
Func<int, int, string> myFunc;
void Start()
{
myAction = (int a, int b) =>
{
int sum = a + b;
print(sum);
};
myFunc = (int a, int b) =>
{
int sum = a + b; return sum + "이 리턴되었습니다.";
};
myAction(10, 20);
print(myFunc(10, 20));
}
}
출력 결과: