首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何声明此函数以返回TFuture?UE5 C++

如何声明此函数以返回TFuture?UE5 C++
EN

Stack Overflow用户
提问于 2022-06-16 04:31:05
回答 1查看 375关注 0票数 -2

我一直试图在我的头文件(使用ue5 c++)中声明这个函数,并让编译器告诉我这个错误:

未识别类型'TFuture‘-类型必须是UCLASS、USTRUCT、UENUM或全局委托。UnrealHeaderTool ParserError*

代码语言:javascript
复制
static TFuture<UTexture2D*> ImportImageFromDiskAsync(UObject* Outer, const FString& ImagePath, TFunction<void()> CompletionCallback);

我在这里做错什么了?

最小可重现性示例:

代码语言:javascript
复制
#include "CoreMinimal.h"
#include "PixelFormat.h"
#include "UObject/NoExportTypes.h"
#include "Async/Future.h"
#include "TSImageLoader.generated.h"

// Forward Declare Texture 2D
class UTexture2D;

DECLARE_LOG_CATEGORY_EXTERN(LogTextureSerializeImageLoading, Log, All);

UCLASS(BlueprintType)
class TEXTURESERIALIZEIO_API UTSImageLoader : public UObject
{
    GENERATED_BODY()

public:
UFUNCTION(BlueprintCallable, meta  = (HidePin = "Outer", DefaultToSelf = "Outer"))
static TFuture<UTexture2D*> ImportImageFromDiskAsync(UObject* Outer, const FString& ImagePath, TFunction<void()> CompletionCallback);

};
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-16 07:13:42

好吧我想明白了。

TFuture不能返回将公开给蓝图的函数。因此,删除上面的UFUNCTION()标记就解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72640483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档