Delphi中使用Lua脚本语言的几点注意!

1. 想在delphi里面使用lua,如果不懂安装那么就可以不安装,把下来的lua.pas文件和两个dll文件放在工程目录里,并且在工程里的uses部分加上lua就可以了。

2. 如果想仅仅运行文件中的一个函数,似乎必须先运行整个文件,也就是需要两次调用pcall函数。这可能是运行函数之前需要先给出一个函数列表。

3. 若函数的某个参数是表,即{1, 2, 3}这样的形式,那么如果想读取表中的第三个值(就是3),必须按照以下顺序使用4个函数:

view plaincopy to clipboardprint?
lua_pushnumber(L, 3); //3指表中第3位  
lua_gettable(L, -2); //-2指表在栈中的位置。这个例子里表参数是最后一个入栈,一般的说应是-1,但是由于方才又压入了一个值,所以变成了-2,同时,表在栈中的位置这个值会被出栈,而从表中读取到的值会入栈。  
p := lua_tostring(L, -1); //把栈顶的数据读出来。  
lua_pop(L, 1); //清栈。 
lua_pushnumber(L, 3); //3指表中第3位
lua_gettable(L, -2); //-2指表在栈中的位置。这个例子里表参数是最后一个入栈,一般的说应是-1,但是由于方才又压入了一个值,所以变成了-2,同时,表在栈中的位置这个值会被出栈,而从表中读取到的值会入栈。
p := lua_tostring(L, -1); //把栈顶的数据读出来。
lua_pop(L, 1); //清栈。

4. lua的delphi译本似乎很多,我用的是http://www.matrix44.de/lua/下载的。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值