Unreal Engine/Unreal Engine

[Unreal Engine] TObjectPtr vs Raw Pointer

CodeHunst 2024. 6. 10. 17:27

TObjectPtr과 Raw Pointer 중 어떤 것을 사용해야 할까?

-> TObjectPtr를 사용하자

 

이유

1. UE5에서는 Raw 포인터 대신 TObjectPtr를 사용하는 것을 권장하고 있다.

 

2. TObjectPtr은 또한 포인터가 초기화되도록 보장한다. ( 새 포인터 변수를 생성하면 nullptr로 초기화하는 것을 잊어버릴 수 있다.)

 

 

예외 -> UFUNTION()

 

UFunction은 인자로 TObjectPtr을 받을 수 없다. 이때는 Raw Pointer를 사용해야 한다.

 

 

[참고]

https://forums.unrealengine.com/t/why-should-i-replace-raw-pointers-with-tobjectptr/232781/13