UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TPimplPtr< T, EPimplPtrMode::NoCopy > Struct Template Reference

#include <PimplPtr.h>

+ Inheritance diagram for TPimplPtr< T, EPimplPtrMode::NoCopy >:

Public Member Functions

 TPimplPtr ()=default
 
 TPimplPtr (TYPE_OF_NULLPTR)
 
 ~TPimplPtr ()
 
 TPimplPtr (const TPimplPtr &)=delete
 
TPimplPtroperator= (const TPimplPtr &)=delete
 
 TPimplPtr (TPimplPtr &&Other)
 
TPimplPtroperator= (TPimplPtr &&Other)
 
TPimplPtroperator= (TYPE_OF_NULLPTR)
 
bool IsValid () const
 
 operator bool () const
 
T * operator-> () const
 
T * Get () const
 
T & operator* () const
 
void Reset ()
 
UE_FORCEINLINE_HINT bool operator== (TYPE_OF_NULLPTR)
 
UE_FORCEINLINE_HINT bool operator!= (TYPE_OF_NULLPTR)
 

Friends

template<typename , EPimplPtrMode >
struct TPimplPtr
 
template<typename U , EPimplPtrMode M, typename... ArgTypes>
TPimplPtr< U, M > MakePimpl (ArgTypes &&... Args)
 

Constructor & Destructor Documentation

◆ TPimplPtr() [1/4]

template<typename T >
TPimplPtr< T, EPimplPtrMode::NoCopy >::TPimplPtr ( )
default

◆ TPimplPtr() [2/4]

◆ ~TPimplPtr()

template<typename T >
TPimplPtr< T, EPimplPtrMode::NoCopy >::~TPimplPtr ( )
inline

◆ TPimplPtr() [3/4]

◆ TPimplPtr() [4/4]

Member Function Documentation

◆ Get()

template<typename T >
T * TPimplPtr< T, EPimplPtrMode::NoCopy >::Get ( ) const
inline

◆ IsValid()

template<typename T >
bool TPimplPtr< T, EPimplPtrMode::NoCopy >::IsValid ( ) const
inline

◆ operator bool()

template<typename T >
TPimplPtr< T, EPimplPtrMode::NoCopy >::operator bool ( ) const
inlineexplicit

◆ operator!=()

◆ operator*()

template<typename T >
T & TPimplPtr< T, EPimplPtrMode::NoCopy >::operator* ( ) const
inline

◆ operator->()

template<typename T >
T * TPimplPtr< T, EPimplPtrMode::NoCopy >::operator-> ( ) const
inline

◆ operator=() [1/3]

template<typename T >
TPimplPtr & TPimplPtr< T, EPimplPtrMode::NoCopy >::operator= ( const TPimplPtr< T, EPimplPtrMode::NoCopy > &  )
delete

◆ operator=() [2/3]

template<typename T >
TPimplPtr & TPimplPtr< T, EPimplPtrMode::NoCopy >::operator= ( TPimplPtr< T, EPimplPtrMode::NoCopy > &&  Other)
inline

◆ operator=() [3/3]

template<typename T >
TPimplPtr & TPimplPtr< T, EPimplPtrMode::NoCopy >::operator= ( TYPE_OF_NULLPTR  )
inline

◆ operator==()

template<typename T >
UE_FORCEINLINE_HINT bool TPimplPtr< T, EPimplPtrMode::NoCopy >::operator== ( TYPE_OF_NULLPTR  )
inline

◆ Reset()

template<typename T >
void TPimplPtr< T, EPimplPtrMode::NoCopy >::Reset ( )
inline

Friends And Related Symbol Documentation

◆ MakePimpl

template<typename T >
template<typename U , EPimplPtrMode M, typename... ArgTypes>
TPimplPtr< U, M > MakePimpl ( ArgTypes &&...  Args)
friend

Heap-allocates an instance of T with the given arguments and returns it as a TPimplPtr.

Usage: TPimplPtr<FMyType> MyPtr = MakePimpl<FMyType>(...arguments...);

DeepCopy Usage: TPimplPtr<FMyType, EPimplPtrMode::DeepCopy> MyPtr = MakePimpl<FMyType, EPimplPtrMode::DeepCopy>(...arguments...);

◆ TPimplPtr

template<typename T >
template<typename , EPimplPtrMode >
friend struct TPimplPtr
friend

The documentation for this struct was generated from the following file: