我发现自己需要一个包含Lua的C项目中的哈希表容器。我想知道是否有可能在Lua中使用哈希表作为通用容器。我已经看过ltable.h
,所有的功能都需要Lua状态,并且看起来与Lua环境有关,所以我猜测如果数据需要独立于Lua,这是不实际的。在Lua之外使用Lua的哈希表是否可行?
5
A
回答
5
这是可能的,最简单的方法就是使用Lua的官方C API。不需要深入ltable.h的内部。
0
您可以使用luabind或luabridge指定C++哈希(如stl的映射)将如何在Lua中表示;那么你就可以将它传递给Lua引擎。请注意,任何使用Lua都需要通过Lua状态,这里不会有任何转义。
相关问题
- 1. 在PHP中使用Lua是否可行?
- 2. lua哈希表,表索引是否为零?
- 3. SOL2/C++ - Lua初学者,可以在Lua文件之间传递Lua表吗?
- 4. 从Lua到Lua的Lua嵌套表
- 5. Lua检查表是否是'实例'
- 6. Lua是否使用64位整数?
- 7. 是否可以在java android项目中使用lua脚本?
- 8. 是否允许在lua表中使用数字键?
- 9. Lua的混合数组和哈希表;它存在于其他地方吗?
- 10. 如何检查文件在Lua中是否可执行?
- 11. 是否有可能在Lua代码中执行hexdump
- 12. Lua是否支持Unicode?
- 13. 访问Lua的内置字符串哈希函数
- 14. 是否有Lua警告而不是Lua错误?
- 15. 的Lua奇表行为
- 16. LUA导入.BVH运动数据/ LUA表使用表动画.OBJ
- 17. 是否可以在Git目录之外创建Git哈希对象?
- 18. 使用LuaDoc扩展名以外的.lua
- 19. 使用Lua中
- 20. 使用Lua
- 21. 是否可以使用Lua“向后”读取文件?
- 22. LUA文本界面库(即写在Lua定制的外壳)
- 23. 是否可以将NetMTLMv2哈希转换为NTLM哈希?
- 24. 是否可以在Lua中禁用堆栈回溯?
- 25. Lua:添加多行到表
- 26. Lua中返回表是零
- 27. 检查lua中是否存在目录?
- 28. Lua 5.1汇编程序是否存在?
- 29. 如何使用Lua语言从磁盘加载Lua表?
- 30. 是否可以通过子哈希值对多维哈希进行排序?
有问题的来源是纯C而不是C++所以没有STL