gpt4 book ai didi

c++ - 从 C++ 将字节数组传递给 lua 脚本方法

转载 作者:太空狗 更新时间:2023-10-29 20:17:42 24 4
gpt4 key购买 nike

如何从 C++ 代码将字节数组作为参数传递给 lua 脚本方法?是否只允许使用 int、float 或 string 数据类型?另外我如何从 lua 脚本方法中检索字节数组?我会将原始字节数组传递给脚本。它将解析并使用它。谢谢。

最佳答案

取决于你想做什么。 Lua 字符串是不可变的字节数组,所以如果它们很小,你可能最好将字节数组转换为带有 lua_pushlstring 的字符串并像那样传递它 --- 是的,嵌入\0得到支持并且工作正常。但是因为它们是不可变的,Lua 最终会在您每次要修改它时复制字符串,因此它可能不适合您的要求。

其他选项是:

  • 在 C++ 字节数组和 Lua 数组(即数字表)之间来回复制数据。这会占用大量内存,但可能是最简单的方法。

  • 将 C++ 字节数组包装在 lightuserdata 中,并提供 Lua 绑定(bind)让您直接访问它。这是最有效的,但代码量很大。

关于c++ - 从 C++ 将字节数组传递给 lua 脚本方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6189149/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com