【问题标题】:UE4 C++ variables inside function are null函数内的 UE4 C++ 变量为空
【发布时间】:2022-11-28 07:47:41
【问题描述】:

试图从虚幻引擎 4 中的另一个类调用函数。我有两个类,一个 AActor 和一个 UWidget 类,我从 UWidget 类调用 AActor 类中的函数。 (所以 UWidget 在 AActor 中有一个实例)

现在当我调用该函数时,它运行没有问题,我什至可以在屏幕上无错误地打印调试消息,但是如果我想在该函数中使用任何变量,它会返回 null。

例如,我在 UWIdget .h 中创建了一个变量,在 UWidget .cpp 中给它一个值,当我想打印该变量值时,它只返回 0。

调用 AActor 中的函数

UpdateInventoryBarSlot 是我从 UWidget 类调用的函数

UWidget 中的 UpdateInventoryBarSlot 函数

如果我在类中运行它,则变量不为空,在另一个类中从该类运行它会导致未定义的值。我究竟做错了什么?

【问题讨论】:

    标签: c++ function class unreal-engine4


    【解决方案1】:

    你没有提供 .h 文件,所以我假设你没有用 UPROPERTY() 宏包装你的变量,所以虚幻垃圾收集器可以擦除变量。

    我还在第一个屏幕截图的 3d 线上看到一个 Destroy() 方法。确保销毁正确的 actor,并且在调用此方法后不要使用此 actor 或其中的任何数据。

    【讨论】:

      猜你喜欢
      • 2012-07-15
      • 1970-01-01
      • 1970-01-01
      • 2017-01-21
      • 2021-07-28
      • 1970-01-01
      • 1970-01-01
      • 2011-06-29
      • 1970-01-01
      相关资源
      最近更新 更多