그냥 게임개발자

TArray - IndexOfByPredicate 본문

Unreal스터디/TArray

TArray - IndexOfByPredicate

sudoju 2024. 1. 2. 22:37

IndexOfByPredicate

  • 지정된 술부에 일치하는 첫 엘리먼트 인덱스를 찾는 데 사용할 수 있으며, 찾은 것이 없으면 마찬가지로 특수 INDEX_NONE값을 반환
int32 Index = StrArr.IndexOfByPredicate([](const FString& Str)
{
return Str.Contains(TEXT("r"));
});
// Index == 2
  • 인덱스 반환 대신, 찾은 엘리먼트로의 포인터를 반환할 수도 있다.
  • FindByKey는 엘리먼트를 임의 오브젝트에 비교하는 식으로 IndexOfByKey 처럼 작동하나, 찾은 엘리먼트가 있으면 그 포인터를 , 없으면 nullptr를 반환한다.
auto* OfPtr = StrArr.FindByKey(TEXT("of"));
auto* ThePtr = StrArr.FindByKey(TEXT("the")):
// OfPtr == &StrArr[1]
// ThePtr == nullptr
  • 마찬가지로 FindByPredicate 역시 IndexOfByPredicate 처럼 사용되지만, 인덱스의 포인터를 반환한다는 점이 다르다.
auto* Len5Ptr = StrArr.FindByPredicate([](const FString& Str)
{
    return Str.Len() == 5;
}
auto* Len6Ptr = StrArr.FindByPredicate([](const FString& Str)
{
    return Str.Len() == 6;
});
// Len5Ptr == &StrArr[2]
// Len6Ptr == nullptr

'Unreal스터디 > TArray' 카테고리의 다른 글

TArray - Remove  (0) 2024.01.07
TArray - FilterByPredicate  (0) 2024.01.07
TArray - IndexOfByKey  (0) 2024.01.02
TArray - Index  (0) 2024.01.02
TArray - Find  (0) 2024.01.02