
lua
文章平均质量分 68
maocl1983
这个作者很懒,什么都没留下…
展开
-
Lua的基本信息调试(三)--lua_getstack
在前面那篇文章Lua的基本信息调试(二)中,我使用了lua_getstack(L, 2, &debug);去取堆栈中的错误信息,但至于错误信息在stack中的层数并不清楚,经过信息打印发现,错误信息在stack的最深处,因此,修改函数为:int pcall_callback_err_fun(lua_State* L){ lua_Debug debug; //取得层数 uint32_t level = 0; while (lua_getstack(L, level, &debug))原创 2011-02-25 20:03:00 · 6480 阅读 · 1 评论 -
Lua的基本信息调试(一)
前段时间在项目中试加入了lua脚本,但由于匆忙很不完善,没有任何的调试信息,包括出错信息的打印,所以很是痛苦!最近终于开始着手完善lua程序,只是从没用过,一切都是从头学起!首先是载入脚本的时候:luaL_dofile(m_lua, pathname.c_str());如果是lua脚本的语法等基本错误,这时候luaL_ dofile会返回错误码,但想知道错误信息就必须看堆栈了。其实查看文档就知道,luaL_dofile分两步:luaL_loadfile以及lua_pcall,因此可以加入如下信息: i原创 2011-02-15 21:47:00 · 6128 阅读 · 0 评论 -
Lua的基本信息调试(二)
<br />前面说过,在我们的项目中使用的是luabind。<br />调用lua函数的接口是:call_function<bool>(m_lua, func_name, player);<br />如果func出错了,lua会抛出异常,c++程序捕捉到后程序可能会崩掉(就看有没有对异常的抛出做反映),所以光写call_function这个函数的话是看不到错误信息的,我们需要把异常捕捉出来。<br /> try {<br /> bool ret = call_function<b原创 2011-02-16 21:45:00 · 4574 阅读 · 0 评论