본문 바로가기
::protected/언리얼4&5

TFunction

by 해맑은욱 2025. 1. 22.

 

'C++ 표준 라이브러리의 std::function'에 대응되는 기능으로 TFunction 템플릿을 제공.

 

 

목적
임의의 함수(람다, 멤버 함수, 일반 함수 등)를 동일한 시그니처로 감싸서, 나중에 호출할 수 있게 해줌.

 

장점

콜백을 넘기고 싶을 때, 편리하게 람다나 함수 포인터를 인자로 전달 가능.

특정 로직 후에(예: 비동기 요청 완료 시) 한 번만 호출할 간단한 콜백 처리에 적합.

 

예시

 

Delegate와의 차이점

 

TFunction

일회성/간단한 콜백을 넘겨주기에 적합.

C++ 표준 스타에 가깝고, 가볍게 사용할 수 있음.

블루프린트에서 직접 바인딩하기는 어려움(직접 지원되지 않음).

 

Delegate

언리얼의 이벤트 바인딩 용도로 사용.

블루프린트와 C++ 간 연동, 멀티바인딩, 브로드캐스트 등 다양한 기능 지원.

다만, 상황에 따라 문법이 더 복잡해질 수도 있음.

 

TFunction은 일종의 함수 포인터 래퍼이며,

콜백을 람다나 멤버 함수, 일반 함수 형태로 유연하게 저장하고 나중에 호출할 수 있도록 해주는 도구이다.