将导出函数的 Lua 函数作为参数。

能否像这样将Lua函数发送到C++主程序?

function a()
    ... -- do something
end

cpp_exported_function(a);

或者更好的是像这样?

cpp_exported_function(function () .... end);

我如何从主程序中调用它呢? 如果可能的话-可以像使用Lua表格一样使用。我的意思是exported_function(table);

原文链接 https://stackoverflow.com/questions/6944457

点赞
stackoverflow用户265522
stackoverflow用户265522

是的 - 在这两种情况下,您都会有一个接受 luabind::object 作为参数的 C++ 函数。Luabind 为 luabind::object 定义了 operator[](用于索引表)和 operator()(用于调用函数),正是为了这个原因。请参阅此处的文档:http://www.hci.iastate.edu/~rpavlik/doxygen/luabind/docs.html#object

2011-11-10 21:51:09