UE4C++学习篇(十二)--- UFUNCTION三种函数标识

UFUNCTION用于成员方法,将成员方法给蓝图对象调用或者重写(1.事件形式重写;2.直接重写函数)

一、
BlueprintCallable:C++写好的成员方法,在蓝图中可以进行调用,蓝图不可重写;

UFUNCTION(BlueprintCallable)
void BlueprintCallableEvent();

定义:在屏幕上输出文字。

void ABoomItem::BlueprintCallableEvent()
{
	GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Green, TEXT("BlueprintCallable!"));
}


二、

BlueprintImplementableEvent:在C++中定义但是不写实现,用蓝图去实现,可以在C++中直接调用;
如果是带有返回值的成员方法,要在Functions文件下使用override去重写,才能正确调用。

UFUNCTION(BlueprintImplementableEvent)
void BlueprintImplementableEventTest();

三、
BlueprintNativeEvent:在C++中定义并实现,C++实现的时候,方法名后面要加一个“_Implementation”,蓝图可以重载,如果要同时调用父类的实现代码,蓝图中右键->add call to parent function;
如果是带有返回值的成员方法,要在Functions文件下使用override去重写,才能正确调用。

UFUNCTION(BlueprintNativeEvent)
void BlueprintNativeEventTest();
void BlueprintNativeEventTest_Implementation();
void ABoomItem::BlueprintNativeEventTest_Implementation()
{
	GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("BlueprintNativeEventTest_Implementation!"));
}

猜你喜欢

转载自blog.csdn.net/qq_42597694/article/details/124393298