10

我有一个PlayerControl.cpp派生自 Pawn 类的类

在那个类中,我有一个方法来获取地图中的所有演员

TSubclassOf<AEnemy> ClassToFind;
 TArray<AActor*> FoundEnemies;
 UGameplayStatics::GetAllActorsOfClass(GetWorld(), ClassToFind, FoundEnemies);

但是 FoundEnemies 数组总是空的,当我在 BP 中做同样的事情时,它会起作用。

有人能告诉我为什么这在 C++ 中不起作用吗?或者如果我做错了,如何做正确?

4

1 回答 1

14

最后,我找到了我自己问题的答案

我应该为变量“ClassToFind”分配一个值所以添加行classToFind = AEnemy::StaticClass();解决了这个问题

TSubclassOf<AEnemy> classToFind;
    classToFind = AEnemy::StaticClass();
    TArray<AActor*> foundEnemies;
    UGameplayStatics::GetAllActorsOfClass(GetWorld(), classToFind, foundEnemies);
于 2016-09-09T08:54:09.663 回答