::protected/언리얼4&5
TFunction
해맑은욱
2025. 1. 22. 14:54
'C++ 표준 라이브러리의 std::function'에 대응되는 기능으로 TFunction 템플릿을 제공.
목적
임의의 함수(람다, 멤버 함수, 일반 함수 등)를 동일한 시그니처로 감싸서, 나중에 호출할 수 있게 해줌.
장점
콜백을 넘기고 싶을 때, 편리하게 람다나 함수 포인터를 인자로 전달 가능.
특정 로직 후에(예: 비동기 요청 완료 시) 한 번만 호출할 간단한 콜백 처리에 적합.
예시

Delegate와의 차이점
TFunction
일회성/간단한 콜백을 넘겨주기에 적합.
C++ 표준 스타일에 가깝고, 가볍게 사용할 수 있음.
블루프린트에서 직접 바인딩하기는 어려움(직접 지원되지 않음).
Delegate
언리얼의 이벤트 바인딩 용도로 사용.
블루프린트와 C++ 간 연동, 멀티바인딩, 브로드캐스트 등 다양한 기능 지원.
다만, 상황에 따라 문법이 더 복잡해질 수도 있음.
TFunction은 일종의 함수 포인터 래퍼이며,
콜백을 람다나 멤버 함수, 일반 함수 형태로 유연하게 저장하고 나중에 호출할 수 있도록 해주는 도구이다.