언리얼 스마트 포인터 라이브러리
TUniquePtr:
포인터의 소유권을 공유할 수 없다
특정 오브젝트에게 명확하게 포인터 해지 권한을 주고 싶은 경우에 사용한다
delete를 직접 작성해주지 않고 자동으로 소멸된다
TSharedPtr:
포인터의 소유권을 공유한다
할당된 오브젝트 포인터가 여러 로직에서 공유되어 사용될 때 사용한다
다른 함수로부터 할당된 오브젝트를 Out으로 받는 경우에는
nullptr일 수도 있기에 주의해야 한다
TSharedRef:
TSharedPtr과 유사하지만 유효한 개체임을 항상 보장받는다
TWeakPtr:
TSharedPtr은 순환 참조 문제가 있어서 이를 개선한 포인터이다
상호 참조하는 경우에 한 클래스는 Strong한 TSharedPtr을 사용하고
다른 클래스는 Weak한 TWeakPtr을 사용하면 된다
TWeakPtr도 사용을 하기위해서는 TSharedPtr로 변환해야하고
이를 사용하는 경우에는 nullptr일수도 있기에 주의해야 한다
'게임 엔진 > [코드조선] 언리얼' 카테고리의 다른 글
언리얼 오브젝트 기능 - 델리게이트 (0) | 2024.05.10 |
---|---|
언리얼 오브젝트 기능 - Serialization (0) | 2024.05.10 |
언리얼 오브젝트 기능 - C++ 로우 포인터 문제 해결 (0) | 2024.05.09 |
언리얼 오브젝트 기능 - Garbage Collection (0) | 2024.05.09 |
언리얼 오브젝트 기능 - Interface (0) | 2024.05.09 |