UE4自己封装的这套泛型容器使用起来非常方便,本文仅记录其中动态数组TArray的基本用法,还有更多的功能后面会陆续补充。
概要动态数组TArray
可以当作数组使用也可以直接充当链表、队列以及栈。在游戏开发中使用非常广泛。
文章目录
声明
- 概要
- 声明
- 添加
- 删除
- 更复杂的删除
- 修改
- 查找
- 高级查找
- 遍历
TArray Ints;//调用默认构造函数
添加
Ints.Add(1);
Ints.Add(2);
Ints.Add(3);
Ints.Add(4);
Ints.Add(5);
Ints.Add(6);
Ints.Add(7);
Ints.Add(8);
Ints.Add(8);
Ints.Add(9);
Ints.AddUnique(9);
Ints.Add(10);
- Add是简单添加
- AddUnique是当容器中不存在该元素再添加
Ints.Remove(8);
- 不可以一边迭代一边删除
- 如果有重复元素,重复元素都会被删除
如果想要删除满足某一条件的所有元素,可以使用RemoveAll
Ints.RemoveAll([](int V) {
return V % 2 == 0;
});
修改
Ints[4] = 100;
查找
if(Ints.Contains(2))
{
UE_LOG(LogTemp,Warning,TEXT("2 found!"));
}
高级查找
int* Even = Ints.FindByPredicate([](int V)
{
return V % 2 == 0;
});
UE_LOG(LogTemp,Warning,TEXT("%d"),*Even);
遍历
for (auto I: Ints)
{
UE_LOG(LogTemp,Warning,TEXT("%d"),I);
}