c - lightuserdata 和指向 const 的指针
问题描述
假设我有一个 C 函数,它返回一个指向 const 的指针,我想将此函数公开给 lua。我怎么做?我不能lua_pushlightuserdata
用来将该函数的返回值推送到堆栈上,因为lua_pushlightuserdata
需要一个类型的参数void *
,而不是void const *
。
解决方案
如果您想使用轻量级用户数据,则别无选择,只能将其转换为void*
.
另一种选择是使用完整的用户数据。这增加了复杂性,但也为您提供了更多的控制权和检查类型的能力。
推荐阅读
- java - Apache pdfbox 没有将几个链接识别为注释
- python - 如何每 60 秒更新一次 PyQt5 图标?
- oracle - 如何解决使用 impdp 的 oracle 导入中的数千个错误,我不知道在 expdp 期间使用了哪些参数?
- angular - 在一个页面上使用多应用程序,但子级发送事件总是数据到第一个
- tensorflow - 计算卷积pytorch(googlenet)中的填充的公式
- r - R中的闪亮应用程序:如何根据输入选择更新表输出
- javascript - 如何缓存通过 Ajax 加载的文件 - JavaScript (Node JS)
- django - 字典作为 django 模板中的字符串
- reactjs - 如何在 MongoDB 中查询引用的对象
- apache-spark - 如何减少 spark 2.3 中的存储内存?