using UnityEngine;
public class DelegateDemo : MonoBehaviour
{
//델리게이트 선언
delegate float SumHandler(flaot a, float b);
//델리게이트 타입의 변수 선언
SumHandler sumHandler;
//덧셈 연산을 하는 함수
float Sum(flaot a,float b)
{
return a+b;
}
void Start()
{
//델리게이트 변수에 함수(메서드) 연결(할당)
sumHandler = Sum;
//델리게이트 실행
flaot sum = sumHandler(10.0f, 5.0f);
Debug.Log($"Sum = {sum}");
}
}
//델리게이트 선언
delegate float SumHandler(flaot a, float b);
위 스크립트에서는 float 변수를 두가지로 선언했다 즉 변수의 형태를 정의
//델리게이트 타입의 변수 선언
SumHandler sumHandler;
델리게이트를 선언한 후 해당 델리게이트 타입의 변수를 선언한다. 앞서 선언한 델리게이트 명이 변수의 타입이 된다.
SumHandler가 변수의 타입이고 sumHandler가 변수 명이다
void Start()
{
//델리게이트 변수에 함수(메서드) 연결(할당)
sumHandler = Sum;
//델리게이트 실행
flaot sum = sumHandler(10.0f, 5.0f);
Debug.Log($"Sum = {sum}");
}
}
Start 함수에서 sumHandler 변수에 Sum 함수를 저장(할당)한다. 이제 sumHandler를 호출하면 해당 변수에 저장된 함수인 Sum 함수를 호출할 수 있다
'유니티 스크립트' 카테고리의 다른 글
코루틴(Coroutine) (0) | 2024.12.24 |
---|---|
델리게이트 실제 사용 (0) | 2024.12.24 |
오브젝트를 포착하고 안의 함수를 호출(실행) (1) | 2024.12.24 |
Resources 폴더에서 프리팹 사용 (0) | 2024.12.23 |
Animator 헤시로 애니메이션 작동 (0) | 2024.12.23 |