最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

虛幻C++:接口實現(xiàn)與調(diào)用的多種方法

2023-07-13 05:10 作者:雨落素潔_official  | 我要投稿

本文會通過完整的接口類聲明、實現(xiàn)、調(diào)用的過程來介紹虛幻C++調(diào)用接口版本的不同。

1.? 創(chuàng)建C++接口類

這里我創(chuàng)建了一個名為BulletHitInterface的類。

繼承Interface


2.? 聲明接口函數(shù)

BulletHitInterface.h

BulletHitInterface.h

細(xì)節(jié)說明:

因為BulletHitInterface所繼承的UInterface是一個抽象類, 同時聲明的函數(shù)BulletHit()也沒有在當(dāng)前類中實現(xiàn),所以BulletHit()不需要virtual修飾也是一個虛函數(shù)。

UFUNCTION()中添加參數(shù)BlueprintNativeEvent,是為了之后在藍(lán)圖中實現(xiàn)。

3.? 實現(xiàn)該接口函數(shù)

3.1? C++版本實現(xiàn)

MerchantCharacter.h

MerchantCharacter.h

_Implementation 后綴用于實現(xiàn)UFUNCTION(BlueprintNativeEvent)修飾的函數(shù)。當(dāng)藍(lán)圖中沒有實現(xiàn)該函數(shù)時,C++代碼中的_Implementation函數(shù)將被調(diào)用。這與BulletHit函數(shù)是否為虛函數(shù)無關(guān)。

MerchantCharacter.cpp

MerchantCharacter.cpp

3.2? 藍(lán)圖版本實現(xiàn)

藍(lán)圖

4.? 調(diào)用的不同方式,如何僅調(diào)用C++實現(xiàn)?如何僅調(diào)用藍(lán)圖實現(xiàn)?

4.1? 僅調(diào)用C++實現(xiàn)

如果同時有C++和藍(lán)圖兩個版本的實現(xiàn),可以通過直接調(diào)用被實現(xiàn)函數(shù)的函數(shù)名,來達(dá)到僅調(diào)用C++的效果。

調(diào)用代碼
輸出日志

4.2? 僅調(diào)用藍(lán)圖實現(xiàn)

通過 Execute_函數(shù)名 的辦法,則可以實現(xiàn)由BlueprintNativeEvent修飾的,僅調(diào)用藍(lán)圖實現(xiàn)。


調(diào)用代碼
輸出日志

以上兩者除了在函數(shù)名上有差別,在參數(shù)上也有差別,需要注意。

僅C++
僅藍(lán)圖

4.3那么有沒有一種辦法同時調(diào)用C++和藍(lán)圖呢?

簡單,調(diào)用父類
輸出日志


感謝閱讀。以上便是我在學(xué)習(xí)過程中的發(fā)現(xiàn)和總結(jié),了解這些知識可以增加一種debug思路。

學(xué)識尚淺,如有錯誤,歡迎在評論區(qū)指摘。


虛幻C++:接口實現(xiàn)與調(diào)用的多種方法的評論 (共 條)

分享到微博請遵守國家法律
罗源县| 奇台县| 屯留县| 凤山县| 宁德市| 右玉县| 定陶县| 高唐县| 许昌县| 台北市| 比如县| 聂荣县| 赤峰市| 沁源县| 永寿县| 菏泽市| 汉川市| 获嘉县| 锡林郭勒盟| 大悟县| 呼和浩特市| 龙南县| 邢台县| 武乡县| 汕尾市| 黑水县| 华池县| 江口县| 涪陵区| 南乐县| 阿克苏市| 葵青区| 洛川县| 罗平县| 射洪县| 三门峡市| 临泽县| 辰溪县| 平湖市| 克拉玛依市| 中江县|