UE4 單對映 TMap容器,字典表

2022-06-26 15:03:13 字數 1318 閱讀 3365

tmap是ue4中的一種關聯容器,每個鍵都關聯著乙個值,形成了單對映關係。因此你可以通過鍵名來快速查詢到值。此外,單對映要求每個鍵都是唯一的。

如果你想建立一種單對映關係,每乙個角色的名稱對應著**:

tmap charaprice;

現在,讓我們來新增角色名稱和**的單對映關係:

charaprice.add("

皮城執法官

", 6300

);charaprice.add(

"皎月女神

", 6300

);charaprice.add(

"暗影之拳

", 3150

);charaprice.add(

"德瑪西亞皇子

", 4800);

這樣就完成了填充單對映,之後,你可以很方便地使用charaprice[「暗影之拳」]來取得這個角色的**為3150金幣。

由於單對映的資料結構也不是線性關係,而是二叉樹。因此一般情況下,我們也不能通過下標索引來迭代單對映。但是我們依然可以使用迭代器進行迭代(由此看出使用迭代器進行迭代可以使得各種容器的迭代操作保持一致):

for(tmapint>::titerator it = charaprice.createiterator(); it; ++it)

注意的是,迭代器指向了單對映的每乙個元素時,可以用key來取得元素的鍵,用value來取得元素的值。

void anpc::prox_implementation(aactor* otheractor, uprimitivecomponent* othercomp, int32 otherbodyindex, bool bfromsweep, const fhitresult &sweepresult)

//獲得第一人稱控制器

aplayercontroller* pcontroller = getworld()->getfirstplayercontroller();

if(pcontroller)

}}

現在我們學了最常用的三種容器,動態陣列容器——tarray,集合容器——tset還有單對映——tset。當然還有各種各樣的容器,它們的操作都是大同小異的。c++的泛型程式設計的優點也在於此,它們提供了相似的介面使得我們非常容易精通各種各樣高效的容器。在遊戲開發中,我們很少會重新寫基本的資料結構型別,因為遊戲引擎已經為我們提供好了大多數的資料結構。但是並不意味著沒有必要學習資料結構,只有當你學習過資料結構,才能熟練地運用遊戲引擎為我們提供的容器。這和我們的學習遊戲引擎原理於使用遊戲引擎的關係是一樣的。所以建議大家,學習工具的同時,不要忘記了同時學習工具的原理哦!

UE4中的單對映 TMap容器

tmap是ue4中的一種關聯容器,每個鍵都關聯著乙個值,形成了單對映關係。因此你可以通過鍵名來快速查詢到值。此外,單對映要求每個鍵都是唯一的。類似c 中的map.如果你想建立一種單對映關係,每乙個角色的名稱對應著 tmapcharaprice 現在,讓我們來新增角色名稱和 的單對映關係 charap...

UE4 動態陣列 TArray容器

為什麼使用ue4提供的容器類?如果你用過c 的stl庫,你就知道stl提供了各種各樣的容器 資料結構,使得你對處理很多資料的時候非常快捷高效。ue4同樣也提供了類似的庫,庫裡面的型別是以t開頭的,使用ue4提供的容器庫可以更好地實現跨平台。所以在ue4進行開發的時候我們很少去使用stl容器,更多時候...

ue4集合型別 UE4 集合 TSet容器

一 tset是什麼 ue4中,除了tarray動態陣列外,還提供了各種各樣的模板容器。這一節,我們就介紹集合容器 tset。類似於tarray,尖括號裡面的t是模板型別,可以是任何c 型別。乙個集合表示了一組互不重複的資料元素。比如tset表示了一組float集合,tset表示了一組fstring集...