Machineboy空
Action, Delegate, 함수 포인터 본문

* Player가 골인을 하면 관중과 사회자가 환호를 해줘야하는 상황
1)일반 함수를 쓴다면
player | 골인을 player가 판단해서 관중.say환호() 사회자.say환호() |
관중 | say 환호 |
사회자 | say 환호 |
구조 상,
2) Action을 쓴다면
player | 알림을 주는 구조 (action) |
관중 | player가 구독을 하고 알림을 받는 구조 |
사회자 | player가 구독을 하고 알림을 받는 구조 |
//01. 일종의 변수로써 함수를 담는다.
nod.onDestroy = (m, n, b) => {
if (b) pressState[m] = false;
lineNode[m].Remove(n);
};
lineNodeInfo[i].RemoveAt(0);
lineNode[i].Add(nod);
//02. 함수를 담은 변수가 원하는 시점에 실행된다.
public void DestroyNode(bool autoDestroy = false)
{
//onDestroy - Action자료형이 null이 아니게 되는 시점
// = onDestroy가 어딘가에서 호출되어서 동작하는 시점?
// 그냥 Destroy를 하지 않고 Action으로 Destroy하는 이유
// 사라지는 Note의 정보를 저장하기 위함
if (onDestroy != null) onDestroy(info.spawn, this, autoDestroy);
Destroy(gameObject);
}
'Computer > 개념' 카테고리의 다른 글
Memory Leak(메모리 누수) (0) | 2023.11.03 |
---|---|
Value vs Reference type (0) | 2023.10.24 |
VM(Virtual Machine) 가상 머신 (0) | 2023.10.18 |
배열(Array)과 리스트(List) (0) | 2023.10.11 |
상속: virtual , override (0) | 2023.09.21 |