Unreal Engine 4 http://uengine.ru/forum/ |
|
Ассоциативный массив С++ http://uengine.ru/forum/viewtopic.php?f=19&t=4657 |
Страница 2 из 2 |
Автор: | adinadin [ 28 июн 2017, 17:44 ] |
Заголовок сообщения: | |
Цитата: Можно объявить 2 обычных TArray, находить номер элемента в первом и по нему определять соотвествие во втором. Но, если возможно, хочется видеть именно ассоциативный массив. Если сильно не хочется использовать Dictinary , то можно поступить следующим образом : создать структуру, что то вроде struct MyStruct { public: int id; int value; //ну или что хочется } и создать массив структур TArray<MyStruct> *myStruct=new TArray<MyStruct>; |
Автор: | WssIDs [ 28 июн 2017, 18:28 ] |
Заголовок сообщения: | Re: |
gary_cho писал(а): тока он не работает, как ассоцииативный массив! Я пробывал юзать и он не сортирует! А в каком плане он не сортирует?) |
Автор: | gary_cho [ 28 июн 2017, 23:54 ] |
Заголовок сообщения: | Re: Re: |
WssIDs писал(а): gary_cho писал(а): тока он не работает, как ассоцииативный массив! Я пробывал юзать и он не сортирует! А в каком плане он не сортирует?) Если мне не изменяет память, то когда напихал в контейнер пар, то остановился на breakpoint после и глянул что внутри, а там был тот же порядок, что я вводил.. но могу ошибаться. Короче мне нужно было напихать пар ключ значение и потом пройтись по всему контейнеру, и это у меня не вышло. |
Автор: | WssIDs [ 29 июн 2017, 08:27 ] |
Заголовок сообщения: | |
Автоматической сортировки в TMap нету. Придется использовать методы KeySort или ValueSort, смотря что нужно по ключу или по значению. А пройтись по контейнеру, через for. Код: for(auto& Elem : HumanMap) { UE_LOG(SaveGameLog, Log, TEXT("%d - %s\n"), Elem.Key,*Elem.Value); } если я правильно понял, под понятием пройтись по контейнеру. |
Автор: | gary_cho [ 29 июн 2017, 13:32 ] |
Заголовок сообщения: | |
это нужно сделать в Blueprint, а не на с++ |
Автор: | Svarog [ 07 июл 2017, 12:54 ] |
Заголовок сообщения: | |
Дествительно может проще использовать два обычных массива. Наверно и быстрее будет... |
Страница 2 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |