重写静态类函数的默认SWIG名称
Overriding default SWIG name for static class functions
我有几个类正在使用swig来包装嵌入的Lua脚本。我们已经定义了函数调用的外观。
display.writeLine("Hello")
问题是SWIG似乎没有定义如何生成库名称的选项。c++类看起来是这样的。
class Display
{
public:
static void writeLine(char *);
}
我可以很容易地让SWIG包装这个函数,只是它总是这样显示Display_writeLine()
因此,我不需要仅仅使用我的自定义名称空间,而是需要进行
display.Display_writeLine()
这不是我想要的。我尝试过重命名规则,但似乎什么都不起作用。现在我有一个外部C函数,它调用我的静态函数,但这是一个我不需要的额外调用。看起来应该很简单。。。
您可以很容易地为您的函数创建一个与函数代码相同的快捷方式,并在启动时加载文件:
display = {}
function display.writeline(str)
display.Display_writeLine(str)
end
相关文章:
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- 如何使用默认参数等选择模板专业化
- 具有默认模板参数的多态类的模板推导失败
- 为什么在没有显式默认构造函数的情况下,将另一个结构封装在联合中作为成员的结构不能编译
- 当函数模板参数是具有默认参数的类模板时,函数模板参数的推导如何执行
- 初始化具有非默认构造函数的std::数组项的更好方法
- 何时提供默认参数作为模板参数
- 是默认情况下分配给char数组常量的值
- Python 3.7 和 excess_args 的 SWIG 问题
- 具有默认值的引用获取函数
- 具有默认模板类型的默认构造函数的类型推导
- 当给定默认值时,为什么此模板参数推导失败
- 修改 VS Code 中的默认C++代码段
- 声明默认的模板化函数
- 将const引用参数初始化为默认参数会导致悬空引用吗
- 如何使用非默认构造函数实例化模板化类
- 如何修复带有 clang 的参数'args'缺少默认参数的问题?
- 从具有默认值的部分指定模板类继承时发生SWIG错误,具有不带默认值的正向声明
- swig-包装到c#时,没有默认的std ::列表,我该怎么做
- 重写静态类函数的默认SWIG名称