2

我有几个类,我正在使用 swig 来包装嵌入式 Lua 脚本。我们已经定义了我们希望函数调用的样子。

display.writeLine("Hello")

问题是 SWIG 似乎没有选项来定义它如何生成库名称。c++ 类看起来像这样。

class Display
{
public:
    static void writeLine(char *);
}

我可以很容易地让 SWIG 包装这个函数,只是它总是像这样 Display_writeLine()

因此,除了使用我的自定义命名空间之外,我还必须这样做

display.Display_writeLine()

这不是我想要的。我尝试过重命名规则,但似乎没有任何效果。现在我有一个外部 C 函数,然后调用我的静态函数,但这是我不需要的额外调用。似乎应该是一些简单的东西......

4

1 回答 1

2

您可以轻松地为您的函数创建一个与函数代码相同并在启动时加载文件的快捷方式:

display = {}

function display.writeline(str)
      display.Display_writeLine(str)
end
于 2013-08-18T18:38:33.237 回答