lua学习
niitlcj
认真第一,聪明第二!
展开
-
Lua 中的小技巧
1 如果 x 为 false 或者 nil 则给 x 赋初始值 v x = x or v 2 C语言中的三元运算符 a ? b : c 在Lua中可以这样实现 (a and b) or c 3 我们可以这样进行交换变量的值 x, y = y, x -- swap 'x' for 'y' a[i], a[j] = a[j], a[i]转载 2012-09-28 11:54:07 · 867 阅读 · 0 评论 -
lua和c的交互
extern "C" { #include "lua.h" #include "lualib.h" #include "lauxlib.h" } #include #include using namespace std; int main() { //Lua示例代码 char *szLua_code = "r =转载 2012-11-08 15:44:33 · 944 阅读 · 0 评论 -
《programming in lua》(1)
《programming in lua》第二版第1-2章。 运行环境 这里使用的lua版本是5.1.4,操作系统是debian 6.0, 到lua的官网下载源码包,因为是ansi c写成的解析器,所以在各个平台上编译都很方便。编译之后会在源码目录里的src下生成两个可执行文件:lua和luac,其中lua用来解析脚本,luac用来把脚本编译成二进制文件。在源码包里也带有一些例子,在test目转载 2012-10-20 14:10:49 · 757 阅读 · 0 评论 -
解决c++ 调用lua 方式! 避免重复写逻辑对应的lua 函数
bool LuaScriptMgr::Call_GlobalFunc( const char* pFuncName , const char* pFormat,...) { if(!pFuncName || 0 == *pFuncName || !pFormat) return false; LuaPopAll pup (m_pLuaState); lua_getglobal原创 2012-10-18 21:12:16 · 1012 阅读 · 0 评论 -
C++返回table给lua
//定义函数(返回table) int func_return_table(lua_State *L) { lua_newtable(L);//创建一个表格,放在栈顶 lua_pushstring(L, "mydata");//压入key lua_pushnumber(L,66);//压入value lua_settable(L,-3);//弹出key,value,并设置到ta原创 2011-03-15 17:52:00 · 12159 阅读 · 0 评论 -
Lua中有8个基本类型 && 运算符的优先级如下(从高到低)
Lua中有8个基本类型分别为 nil boolean number string userdata function thread table 函数 type 可以测试给定变量或者值的类型。 运算符的优先级如下(从高到低) 从高到低的顺序: ^ not - (unary转载 2012-09-28 11:59:39 · 16977 阅读 · 0 评论 -
Lua 的简单介绍
Lua 的简单介绍 1. Lua的特点 2. 数据交换介绍 3. C和Lua脚本互相调用举例 4. 参考资料 1. Lua的特点 Lua 是一个小巧的脚本语言。作者是巴西人。该语言的设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。它的主页是 www.lua.org。 Lua最著名的应用是在暴雪公司的网络原创 2011-03-15 18:32:00 · 894 阅读 · 0 评论 -
Luna Wrapper 导出类
Luna Wrapper wiki LunaWrapper is a short (53-line) wrapper to provide access to C++ classes from within Lua with relative ease. Inspired by [1], up原创 2011-03-15 18:33:00 · 887 阅读 · 0 评论 -
lua CAPI
1. 建一个新表 void lua_createtable (lua_State *L, int narr, int nrec) 创建一个新的table, 并把它放在栈顶. narr和nrec分别指定该table的array部分和hash部分的预分配元素数量 无返回值 栈高度+1, 栈顶元素是新table #define lua_newtable(L) lua_createtable(原创 2011-03-15 21:01:00 · 2349 阅读 · 0 评论 -
linux下安装使用tolua++
cd tolua++-1.0.93 用vi 创建文件custom.py内容如下 ## BEGIN custom.py CCFLAGS = ['-I/usr/local/include/', '-O2', '-ansi'] LIBPATH = ['/usr/local/lib'] LIBS = ['lua', 'dl', 'm'] tolua_bin = 'tolua++'转载 2014-04-03 10:28:52 · 3709 阅读 · 0 评论