BlueprintImplementableEvent和BlueprintNativeEvent

在C++代码中我们可能会遇到这两个对函数的定义

复制代码
UFUNCTION(BlueprintImplementableEvent, Category = "TEST")
void testFunc1()


UFUNCTION(BlueprintCallable, BlueprintNativeEvent, Category = "TEST")
void testFunc2()

BlueprintImplementableEvent修饰的函数,函数体必须在蓝图中实现,C++不能写函数体。为的是让C++中能调用蓝图实现的方法,换句话说是可以让c++触发蓝图事件。

BlueprintNativeEvent修饰的函数,C++和蓝图中都可以实现函数体,C++中的函数体必须是

复制代码
void UMyClass::testFunc2_Implementation()
{
    // C++ 默认行为
}

蓝图中的实现可以覆盖c++实现,当蓝图覆盖实现时,C++的Implementation不会调用,除非在蓝图中主动调用Parent。

如果 C++ 必须要有默认逻辑 → 使用 BlueprintNativeEvent

例如 AI 行为、角色事件、系统机制。

如果完全由蓝图设计 → 使用 BlueprintImplementableEvent

例如 UI 动画、按键响应、触发器效果。

相关推荐
傲世仙尊5 分钟前
多态-虚表才活到运行期符号表早已消失
c++
chenbingjie_c18 分钟前
C++ 多态完全指南:从虚函数重写到虚函数表原理
开发语言·c++
是main不是漫19 分钟前
【双指针——移动零】数组划分类题目的入门基石
c++·算法
·present·35 分钟前
CSAPP(Bomb lab)
c语言·c++
王老师青少年编程1 小时前
2026年信奥赛c++普及组csp-j第二轮复赛真题
c++·真题·csp·信奥赛
时间的拾荒人2 小时前
CMake 常用命令详解:从版本声明到安装部署
c++·面试
D e re k ZH5 小时前
P5025 [SNOI2017] 炸弹
c++·算法
wuminyu5 小时前
Java字节码学习总结:字节码如何加载、解析和执行
java·linux·c语言·jvm·c++
qq_406981035 小时前
c++的decltype是什么
开发语言·c++
坤坤子吖5 小时前
算法学习——单调队列
开发语言·c++·笔记·学习·算法