UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TObjectArrayIterator< TObjectClass > Class Template Reference

#include <UObjectGlobals.h>

Public Member Functions

 TObjectArrayIterator (TArray< TObjectClass * > &InArray, UClass *InClassToCheck=nullptr, EFindObjectFlags InFlags=EFindObjectFlags::None)
 
template<UE::CSameAs< bool > ExactClassType>
UE_NODEBUG UE_FORCEINLINE_HINT TObjectArrayIterator (TArray< TObjectClass * > &InArray, UClass *InClassToCheck, ExactClassType bInExactClass)
 
UE_FORCEINLINE_HINT void operator++ ()
 
UE_FORCEINLINE_HINT operator bool () const
 
UE_FORCEINLINE_HINT bool operator! () const
 
TObjectClassoperator* () const
 
TObjectClassoperator-> () const
 
UE_FORCEINLINE_HINT void RemoveCurrent ()
 
UE_FORCEINLINE_HINT void RemoveCurrentSwap ()
 

Protected Member Functions

UE_FORCEINLINE_HINT TObjectClassGetObject () const
 
bool Advance ()
 

Detailed Description

template<class TObjectClass>
class TObjectArrayIterator< TObjectClass >

Iterator for arrays of UObject pointers

Parameters
TObjectClasstype of pointers contained in array

Constructor & Destructor Documentation

◆ TObjectArrayIterator() [1/2]

template<class TObjectClass >
TObjectArrayIterator< TObjectClass >::TObjectArrayIterator ( TArray< TObjectClass * > &  InArray,
UClass InClassToCheck = nullptr,
EFindObjectFlags  InFlags = EFindObjectFlags::None 
)
inline

Constructor, iterates all non-null, non pending kill objects, optionally of a particular class or base class

Parameters
InArraythe array to iterate on
InClassif non-null, will only iterate on items IsA this class
InbExactClassif true, will only iterate on exact matches

◆ TObjectArrayIterator() [2/2]

template<class TObjectClass >
template<UE::CSameAs< bool > ExactClassType>
UE_NODEBUG UE_FORCEINLINE_HINT TObjectArrayIterator< TObjectClass >::TObjectArrayIterator ( TArray< TObjectClass * > &  InArray,
UClass InClassToCheck,
ExactClassType  bInExactClass 
)
inline

Member Function Documentation

◆ Advance()

template<class TObjectClass >
bool TObjectArrayIterator< TObjectClass >::Advance ( )
inlineprotected

Iterator advance with ordinary name for clarity in subclasses

Returns
true if the iterator points to a valid object, false if iteration is complete

◆ GetObject()

template<class TObjectClass >
UE_FORCEINLINE_HINT TObjectClass * TObjectArrayIterator< TObjectClass >::GetObject ( ) const
inlineprotected

Dereferences the iterator with an ordinary name for clarity in derived classes

Returns
the UObject at the iterator

◆ operator bool()

template<class TObjectClass >
UE_FORCEINLINE_HINT TObjectArrayIterator< TObjectClass >::operator bool ( ) const
inlineexplicit

conversion to "bool" returning true if the iterator is valid.

◆ operator!()

template<class TObjectClass >
UE_FORCEINLINE_HINT bool TObjectArrayIterator< TObjectClass >::operator! ( ) const
inline

inverse of the "bool" operator

◆ operator*()

template<class TObjectClass >
TObjectClass & TObjectArrayIterator< TObjectClass >::operator* ( ) const
inline

Dereferences the iterator

Returns
the UObject at the iterator

◆ operator++()

template<class TObjectClass >
UE_FORCEINLINE_HINT void TObjectArrayIterator< TObjectClass >::operator++ ( )
inline

Iterator advance

◆ operator->()

template<class TObjectClass >
TObjectClass * TObjectArrayIterator< TObjectClass >::operator-> ( ) const
inline

Dereferences the iterator

Returns
the UObject at the iterator

◆ RemoveCurrent()

template<class TObjectClass >
UE_FORCEINLINE_HINT void TObjectArrayIterator< TObjectClass >::RemoveCurrent ( )
inline

Removes the current element from the array, slower, but preserves the order. Iterator is decremented for you so a loop will check all items.

◆ RemoveCurrentSwap()

template<class TObjectClass >
UE_FORCEINLINE_HINT void TObjectArrayIterator< TObjectClass >::RemoveCurrentSwap ( )
inline

Removes the current element from the array, faster, but does not preserves the array order. Iterator is decremented for you so a loop will check all items.


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