您的位置:首页 > 编程语言 > Lua

c++调用lua

2014-03-12 23:01 134 查看
官方文档里面提到不要直接调用luaopen_*这些函数,只能使用间接调用。举个例子,比如你要调用

luaopen_base,应该这么写:

lua_pushcfunction(m_lua_, luaopen_base);

lua_pushstring(m_lua_, "");

lua_call(m_lua_, 1, 0);

顺便提下各个函数的含义:

luaopen_base:加载lua基本库

luaL_openlibs:加载lua标准库

luaopen_package:加载所有包


luaopen_table:加载表

void lua_rawgeti (lua_State *L, int index, int n);


t
的值压栈,这里的
t
是指给定索引
index
处的一个值。这是一个直接访问;就是说,它不会触发元方法。

更多具体内容参考:http://www.codingnow.com/2000/download/lua_manual.html#luaL_openlibs
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: