Luabind уже имеет автоматические преобразования между строками Lua и std :: string (а также char *).Таким образом, вы должны иметь возможность использовать их в качестве параметров и / или возвращаемых значений просто отлично.Если вы не можете этого сделать, значит, что-то идет не так, как на вашей стороне, так и на стороне Luabind.
Luabind также имеет адаптер для преобразования возвращаемого типа, соответствующего STLконтейнер в итераторную функцию Lua.Таким образом, вы можете использовать его в цикле for, подобном следующему:
for object in CppFuncThatReturnsStdVector() do
--Do something with "object"
end
Кроме них, я не знаю каких-либо конкретных попыток создать библиотеку Luabind, которая напрямую предоставляет стандартную библиотеку C ++ Lua.Это, вероятно, было бы не очень хорошей идеей;Таблицы Lua покрывают большинство потребностей, которые могут возникнуть у контейнеров в стиле STL.И большинство других вещей - это то, что Lua может обрабатывать с помощью собственной стандартной библиотеки.