TArray(배열)에서 아이템 제거해야 되는 경우,

원래는 RemoveAt(위치 인덱스) 사용한다.

이때 내부적으로는 memcpy가 호출되고, 따라서 나머지 항목들의 순서는 유지된다.

 

하지만, 굉장히 많은 항목을 반복적으로 제거해야 되고,

항목들의 순서가 중요하지 않거나 혹은 후처리로 따로 정렬을 해도 되는 경우라면,

RemoveAtSwap을 쓰는 게 낫다.

 

나머지 항목을 전체를 옮기지 않고, 배열의 맨 마지막 항목만 지우려는 위치로 복사한다.

참고 링크 : https://docs.unrealengine.com/4.26/ko/ProgrammingAndScripting/ProgrammingWithCPP/UnrealArchitecture/TArrays/

+ Recent posts