[英]Calling Lua Functions From C++
我正在使用最新版本的LuaJit,并且需要一些入门帮助。 我需要的是让一堆函数暴露在Lua环境中,这些函数可以在脚本中覆盖以运行用户提供的代码,然后在C ++中的set事件期间调用这些函数。
例如,当用户按下TAB键时,它将从lua环境中调用一个函数,例如OnScoreboardOpen();当用户释放TAB键时,它将调用相应的函数OnScoreboardClose(),这些函数可以附加到元方法上例如Game或GM。
有人可以指出一些教程或示例代码来说明如何实现此目标吗? 非常感谢您的宝贵时间。
基本上,您使用以下两个函数:lua_pushXXX和lua_pcall
取决于您如何命名LUA函数,它可以是普通函数或对象方法。 即
function OnScoreboardOpen()
end
要么
function Game:OnScoreboardOpen()
end
使用普通函数相对简单,只需执行以下操作:
// TODO: sanity check
lua_getglobal(L, name);
lua_pushnumber(L,123);
lua_pcall(...);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.