-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
Action 관련해서 질문드립니다.
22.01.21 16:42 작성 조회수 184
0
InputManager에서
public Action KeyAction = null;
public void OnUpdate()
{
if (Input.anyKey == false)
return;
if (KeyAction != null)
KeyAction.Invoke();
}
저 빨간 부분인 KeyAction.Invoke()에 대해 궁금한데요. 찾아보니까 Action을 사용하려면 Invoke가 붙어야 한다고 구글링을 통해 알았습니다만... 그런데 Invoke 없이 일반적으로 KeyAction(); 만 사용해도 문제없이 실행 되더라고요.
여기서 Invoke가 있고 없고의 차이가 무엇인지 알수 있을까요?
답변을 작성해보세요.
1
Rookiss
지식공유자2022.01.21
()을 해도 내부적으로 Invoke()가 되어 사실상 100% 동일합니다.
개인적으로 Invoke()를 호출하면 일반 함수가 아닌 delegate라는 가독성도 좋아지고
또 nullable을 활용해서 KeyAction?.Invoke(); 도 고려할 수 있기 때문에 후자를 더 좋아합니다.
답변 1