(1) UFUNTIION()宏应包含三类说明符:①表示蓝图可调用含义的说明符,如常用的BlueprintCallable、BlueprintPure;② CustomThunk说明符,标识该函数需要自定义Thunk函数体;③被说明符ArrayParm所标识的泛型参数(wildcard array)列表,此外还可能包含标识泛型Array参数之间依赖关系的ArrayTypeDependentParams说明符,其他说明符视...
3、调用UFunction void UCommonFunctionLibrary::Generic_CallFunctionByName_Auto_Params(UObject* Target, FName FuncName, TArray<void*> ParamList, TArray<FProperty*> ParamPropertyList) { if (Target) { UFunction* Func = Target->GetClass()->FindFunctionByName(FuncName); if (Func) { // 分配内存...
execTestCustomThunk函数传入的参数为UObject* Content, FFrame& Stack, void* Z_Param_Result 其中Stack为传入参数的栈,Z_Param_Result为返回值的地址 参数可以分为 UObject enum struct(FVector, FRotator等) TArray TMap TSet 基本数据类型(int32, bool, double, FString等) 其中每一种分别对应两个宏,一个值...
voidUMiscAlgorithm::GenericArray_Validv2(void*ArrayAddr,UArrayProperty*ArrayProperty,EEvaluateArray&EvaluateArrayPIN){// Determine whether the array length is greater than 0boolbValidArray=UKismetArrayLibrary::GenericArray_Length(ArrayAddr,ArrayProperty)>0;if(bValidArray==true){// Exec IsValid PINEva...