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

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

十七、接口

2023-02-17 11:37 作者:愛玩UE5的小哥哥  | 我要投稿

一.什么接口?怎么理解接口?

簡單的說,接口提供一組公共的方法,不同的對象中繼承這些方法后可以有不同的具體實現(xiàn)。(這不就是多態(tài)嗎?)

用具體例子來解釋:

上面代碼中dog類和cat類,同樣實現(xiàn)了IDamageable接口,它們都具備了受傷生命值減少的特性,只是他們受傷后的具體表現(xiàn)略有不同:狗直接死亡,貓復(fù)活9次后就死了(多態(tài),不同的類對于接口的實現(xiàn)有所不同),但是他們最終都可能會因受傷過重而死亡(這里體現(xiàn)接口的約束力).

二.接口的意義

1.任何使用接口的類都必須實現(xiàn)這些接口。

2.實現(xiàn)解耦

如上方代碼,Killer無需關(guān)心具體是對貓還是狗造成傷害:

對狗造成傷害,傷害值超過狗的生命值上限,狗會死亡

對貓造成傷害,傷害值超過貓的生命值上限,貓會減少一次復(fù)活機(jī)會然后重生.

這就體現(xiàn)了調(diào)用者(Kill)和實現(xiàn)者(dog,cat)之間并沒有耦合,即不管我打的是誰,只要我打的夠狠,不管他是誰,他都會死,區(qū)別是一槍死還是10槍死而已

3.解決多繼承的問題

三.藍(lán)圖中的接口

藍(lán)圖的新建接口相當(dāng)于定義接口,在一個藍(lán)圖類里面Add接口并且編寫接口的邏輯相當(dāng)于實現(xiàn)接口函數(shù),在另一個類里面執(zhí)行接口函數(shù)相當(dāng)于調(diào)用接口

1.藍(lán)圖接口的創(chuàng)建與實現(xiàn)

BP_Interface
無返回值的接口,實現(xiàn)后是一Even的形式出現(xiàn)

2.藍(lán)圖接口調(diào)用

獲取有接口的多有actor

判斷某個Object是否實現(xiàn)某個接口

四.C++中的接口

1.UE的接口類創(chuàng)建接口


Cpp_Interface

空白類創(chuàng)建接口

自定義接口格式:

#include "空類名.generated.h"

UINTERFACE(MinimalAPI)
class ?U自定義接口名:public UInterface
{
? GENERATED_BODY()
};

class 項目名_API?I與上面的自定義接口名一致
{
? GENERATED_BODY()
public:
? //在此處添加接口函數(shù)聲明
};

空類自定義接口:MyNoonClassInterface

.h文件

.cpp文件

重新編譯C++項目即可在UE的C++Classes中看到這個接口


2.C++中聲明接口函數(shù)

Cpp_Interface.h文件

Cpp_Interface.cpp文件

2.藍(lán)圖中實現(xiàn)接口函數(shù)與調(diào)用接口函數(shù)

新建一個藍(lán)圖類BP_ImpInterface(意思是藍(lán)圖實現(xiàn)接口函數(shù))

①藍(lán)圖實現(xiàn)C++的接口函數(shù)

②藍(lán)圖調(diào)用藍(lán)圖實現(xiàn)C++的接口函數(shù)

新建藍(lán)圖類BP_ExecuteInterface

成功執(zhí)行C++聲明的4個接口函數(shù)

3.C++中實現(xiàn)接口函數(shù)與調(diào)用接口函數(shù)

①C++實現(xiàn)接口函數(shù)

新建一個繼承與Actor的C++類:Cpp_ImpInterface(C++實現(xiàn)接口函數(shù))

Cpp_ImpInterface.h文件

Cpp_ImpInterface.cpp文件

②C++調(diào)用接口函數(shù)

創(chuàng)建一個調(diào)用C++接口的類:Cpp_CallCppInterface

.h文件

.cpp文件

C++中成功調(diào)用接口






十七、接口的評論 (共 條)

分享到微博請遵守國家法律
托克托县| 陕西省| 聊城市| 通道| 方正县| 嵊泗县| 涡阳县| 平南县| 衡水市| 盐城市| 长海县| 福泉市| 涪陵区| 岑巩县| 靖宇县| 新昌县| 东乌珠穆沁旗| 景德镇市| 资阳市| 巴彦淖尔市| 娱乐| 依兰县| 宝兴县| 堆龙德庆县| 察哈| 福安市| 宣恩县| 沭阳县| 西安市| 石狮市| 磐石市| 上虞市| 安达市| 上蔡县| 云阳县| 内丘县| 垫江县| 广德县| 弋阳县| 恭城| 邵阳市|