如何在LUA C API中分配全局LUA函数变量
How to assign global Lua function variables in Lua C API?
我正在尝试重命名lua中的某些功能,以便我更容易地称其为称呼。
例如,of.getHours()
函数应通过ofGetHours()
调用。
因此,在初始化LUA状态后,我加载了一个LUA字符串,该字符串分配了这些全局函数变量如下:
luaL_dostring(L, "ofGetHours = of.getHours ofGetMinutes = of.getMinutes");
此方法正常工作,但我想使用Lua C API来提高性能并使我的代码更可读。
我认为我需要使用lua_setglobal()
,但我不知道如何正确执行此操作。任何帮助将不胜感激。
提供os
值是全局表,您的代码可能看起来像这样:
lua_getglobal(L, "of");
lua_getfield(L, -1, "getMinutes");
lua_setglobal(L, "ofGetMinutes");
lua_getfield(L, -1, "getHours");
lua_setglobal(L, "ofGetHours");
lua_pop(L, 1);
相关文章:
- 为什么在全局范围内使用"extern int a"似乎不行?
- 在全局变量中保存类的实例以重新创建类(创建"backup")
- 当vector是tje全局变量时,c++中vector的内存管理
- std::threads可以从Windows DLL中的全局变量创建/销毁吗?
- 如何创建一个空的全局类并在启动时实例化它
- 内联函数中具有内部链接的全局变量
- 为什么虚函数不能是静态的和全局的?
- 如何在信号处理程序和普通函数中对全局变量进行互斥读写操作
- C++Lua用户数据扰乱了Mathfu浮点值
- 全局作用域中函数指针的赋值
- g++用户定义的动态链接库上的全局new和delete运算符
- 通过require在不同的Lua状态之间共享全局变量
- 使用LUA中使用后缺少的全局变量
- 如何在LUA C API中分配全局LUA函数变量
- 如何从C++中过滤掉Lua中用户定义的全局变量
- 将一个没有全局的表从 lua 返回到 C
- Lua、元表和全局变量
- c++lua设置全局变量时出错
- 用c++访问Lua全局表
- Lua:加载文件后获取全局函数失败