TWeakObjectPtr

Windows
MacOS
Linux

Inheritance Hierarchy

TWeakObjectPtrBase

TWeakObjectPtr

TAutoWeakObjectPtr

Syntax

template<class T, class TWeakObjectPtrBase>
struct TWeakObjectPtr : private TWeakObjectPtrBase

Constructors

Name Description

Public function

TWeakObjectPtr()

Although templated, these parameters are not intended to be anything other than the default, and are only templates for module organization reasons.

Public function

TWeakObjectPtr

(
    const TWeakObjectPtr&
)

Public function

TWeakObjectPtr

(
    TYPE_OF_NULLPTR
)

Construct from a null pointer

Public function

TWeakObjectPtr

(
    U* Object
)

Construct from an object pointer

Public function

TWeakObjectPtr

(
    const TWeakObjectPtr< OtherT, TWeak...
)

Construct from another weak pointer of another type, intended for derived-to-base conversions

Destructors

Name Description

Public function

~TWeakObjectPtr()

Functions

Name Description

Public function Const

T *

 

Get

(
    bool bEvenIfPendingKill
)

Dereference the weak pointer

Public function Const

T *

 

Get()

Dereference the weak pointer. This is an optimized version implying bEvenIfPendingKill=false.

Public function Const

T *

 

GetEvenIfUnreachable()

Deferences the weak pointer even if its marked RF_Unreachable.

Public function Const

bool

 

HasSameIndexAndSerialNumber

(
    const TWeakObjectPtr& Other
)

Public function Const

bool

 

IsStale

(
    bool bIncludingIfPendingKill,
    bool bThreadsafeTest
)

Slightly different than !IsValid(), returns true if this used to point to a UObject, but doesn't any more and has not been assigned or reset in the mean time.

Public function Const

bool

 

IsValid

(
    bool bEvenIfPendingKill,
    bool bThreadsafeTest
)

Test if this points to a live UObject

Public function Const

bool

 

IsValid()

Test if this points to a live UObject.

Public function

void

 

Reset()

Reset the weak pointer back to the NULL state

Operators

Name Description

Public function Const

T &

 

operator*()

Dereference the weak pointer

Public function

TWeakObjectP...

 

operator=

(
    const TWeakObjectPtr&
)

Public function

TEnableIf<&#...

 

operator=

(
    U* Object
)

Copy from an object pointer

Public function

TWeakObjectP...

 

operator=

(
    const TWeakObjectPtr< OtherT, TWeak...
)

Assign from another weak pointer, intended for derived-to-base conversions

Public function Const

T *

 

operator->()

Dereference the weak pointer

Deprecated Functions

Name Description

Public function

TEnableIf< T...

 

operator=

(
    U* Object
)

Implicit conversions from const pointers to non-const TWeakObjectPtrs has been deprecated. Please const-correct this usage.

References

Module

Core

Header

Runtime/Core/Public/UObject/WeakObjectPtrTemplates.h

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback