size_t GetTypeHash() const
{
static size_t UniquePointer;
return reinterpret_cast<size_t>(&UniquePointer);
}
타입마다 스태틱 변수를 선언하고 이 값의 주소값을 반환하는 방식으로 짜여져 있다.
FPrimitiveSceneProxy에 순수가상함수로 선언되어있어 구현 클래스에서 이를 구현해주어야 한다.
예제 코드
#include <iostream>
#define DECLARE_TYPEHASH \
size_t GetTypeHash() const \
{ \
static size_t UniquePointer; \
return reinterpret_cast<size_t>(&UniquePointer); \
}
class A
{
public:
DECLARE_TYPEHASH
};
class B
{
public:
DECLARE_TYPEHASH
};
int main ()
{
A a;
B b;
std::cout << "A TypeHash : " << a.GetTypeHash() << '\n';
std::cout << "B TypeHash : " << b.GetTypeHash() << '\n';
return 0;
}
결과 값
Start
A TypeHash : 6296952
B TypeHash : 6296960
0
Finish
'프로그래밍 > Unreal' 카테고리의 다른 글
[Unreal] 클래스의 Prefix를 F로 사용하는 이유. (0) | 2022.05.01 |
---|---|
Unreal의 스레드와 단일 스레드로 실행시키기 (-norenderthread) (0) | 2022.04.06 |
UE4 -waitforattach (0) | 2022.03.30 |
TEnableIf (0) | 2020.11.24 |
Unreal Engine의 저작권 (0) | 2020.11.24 |