【问题标题】:Spawn Actor with a class (UE4)生成具有类的 Actor (UE4)
【发布时间】:2019-01-23 14:27:41
【问题描述】:

我目前正在尝试使用“Spawn Actor”功能在我的场景中生成一个陷阱,但奇怪的是,它不想将我的静态类作为 UClass*。所以这一行:

currentTrap = GetWorld()->SpawnActor(AOMFBallista::StaticClass, GetOwner()->GetActorLocation());

只是不想工作。错误是:

'AActor *UWorld::SpawnActor(UClass *,const FTransform *,const FActorSpawnParameters &)':无法将参数 1 从 'UClass *(__cdecl *)(void)' 到 'UClass *' OrcMustFry D:\SVN\2018-2019\Sections\Prog3B\Cours\UE4\Application\OrcMustFry\Step3\Correction\Source\OrcMustFry\PlaceTrapComponent.cpp 36

如果您知道这个问题可能出现在哪里,我将非常感激!

【问题讨论】:

  • 看起来SpawnActor 的第一个参数应该是一个函数指针,它的返回类型是* UClass 并且不带任何参数。但是您提供的论点与它的签名不匹配
  • 是的,我只是想知道这个带有“(__cdecl *)”的签名是什么意思,非常感谢:)!

标签: c++ unreal-engine4


【解决方案1】:

StaticClass 不是一个字段,而是一个函数。所以你最后错过了'()':

currentTrap = GetWorld()->SpawnActor(AOMFBallista::StaticClass(), GetOwner()->GetActorLocation());

【讨论】:

  • 你的陈述没有回答他的问题。问题是别的。看cmets
  • 问题是为什么它不能编译 -> 我回答了正确的编译代码并说出了缺失的内容。这怎么不回答问题。此外,“劳拉”不是男人的名字。
猜你喜欢
  • 1970-01-01
  • 2020-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-15
  • 2022-06-16
  • 2019-08-24
  • 1970-01-01
相关资源
最近更新 更多