lightuserdata 和指向常量的指针

假设我有一个返回指向常量的指针的 C 函数,我想将这个函数暴露给 Lua,应该怎么做?我不能使用 lua_pushlightuserdata 来将该函数返回值推入栈中,因为 lua_pushlightuserdata 希望传入的参数类型是 void *,而不是 void const *

点赞
用户14864687
用户14864687

如果您想使用轻量用户数据,则除将其转换为 void * 外别无选择。

另一种选择是使用完整的用户数据。这会增加复杂性,但也为您提供更多的控制权和检查类型的能力。

2021-01-15 10:48:56