LINUX.ORG.RU

А есть ли в Lua аналог std::map из c++?

 ,


0

1

Сабж. А если нет, то почему (да, даже в гугле не шибко гуглится, разве пара велосипедов да и те на трех квадратных колесах)? Да, сложные вычисления на Lua - извращение, но геймдев который иногда грешит плагинами с Lua порой творит тормозящие вещи в этих плагинах, самое простое и распространенное — поиск в инвентаре персонажа или поиск в списке всех предметов которые есть в игре. Только сегодня видел реализацию в одном проекте (не будем тыкать пальцем в каком именно), где для поиска используют поиск перебором в нескольких сотнях (а потенциально в тысячах) не сортированных объектов. Я конечно понимаю, сейчас нехилые пекарни, но когда такой код дергается каждый раз при нажатии на кнопку и некоторых внутриигровых событиях бывают фризы...
Я в LUA не разбираюсь особо, знаю его на уровне написать лабу для ВУЗ-а, которая будет работать, так что вопрос может быть глупым.
PS
Да, я знаю о table и соответственно о table.sort в Lua, однако меня терзают смутные сомнения по поводу того что это полноценная замена map, особенно когда в ходе работы туда что-то добавляется.

★★★★★

Последнее исправление: peregrine (всего исправлений: 1)

Если нужно настоящее красно-черное дерево, то встроенного нет, придется биндить свой c++ код с std::map или юзать че-нить типа https://github.com/sjnam/lua-rbtree

сложные вычисления на Lua - извращение

С LuaJIT - вполне реально

annulen ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.