Если я правильно понимаю вашу проблему, кажется, вы создаете объекты в Lua, которые затем вставляете в карту (либо через Lua или C ++), а затем теряете.Без дополнительного кода трудно точно сказать, в чем проблема.Однако сначала я хотел бы убедиться, что эти объекты действительно создаются (дважды проверьте его), а затем я проверю, чтобы Lua не собирал их мусором.Если Lua действительно собирает эти объекты, то вы не увидите их на стороне C ++, потому что они, ну, в общем, ушли.
Если это поможет, я заканчиваю проект, который делает нечто подобное,Мне пришлось создавать и извлекать объекты C ++ из Lua, но вместо того, чтобы создавать объекты в Lua, я просто вызывал функции C ++, чтобы сделать это для меня, отправляя любые необходимые данные в вызове Lua (связанном с Luabind).Эти функции (C ++) проиндексировали объекты по идентификаторам в хеш-таблицах, и идентификаторы были возвращены Lua на тот случай, если понадобится получить объектную часть сценария для операций.Эта настройка упрощает (и безопаснее) правильную обработку содержимого памяти и предотвращает сбор мусора вашими объектами Lua.