IsValid

jelly·2025년 2월 28일
  1. IsValid(Object)
    설명: UObject가 올바르게 할당되고 소멸되지 않았는지 확인하는 함수입니다.
    사용 예시:
    UObject* SomeObject = GetSomeObject();
    if (IsValid(SomeObject))
    {
    // SomeObject가 유효한 경우 실행
    }
    주요 특징:
    객체가 nullptr 인지 확인합니다.
    객체가 PendingKill(GC에 의해 제거될 예정) 상태인지 확인합니다.
    IsValid는 AActor의 경우 IsPendingKill()도 체크합니다.
  2. IsValidLowLevel()
    설명: 객체가 Unreal Engine의 메모리 시스템에서 정상적인 객체로 인식되는지 확인하는 함수입니다.
    사용 예시:
    if (SomeObject && SomeObject->IsValidLowLevel())
    {
    // SomeObject가 엔진 메모리에서 유효한 경우 실행
    }
    주요 특징:
    객체가 올바르게 생성되었는지 확인합니다.
    내부 메모리 상태가 올바르게 유지되고 있는지 확인합니다.
    하지만 GC에 의해 삭제 예정(PendingKill)인 객체도 유효하다고 판단할 수 있음.
profile
jelly

0개의 댓글