C语言和Lua天生有两大隔阂:一、C语言是静态数据类型,Lua是动态数据类型二、C语言需要程序员管理内存,Lua自动管理内存为了跨越世俗走到一起,肯定需要解决方案。解决第一点看上去比较容易,C语言中有union。可是第二点呢?万一C语言正引用着Lua的一个值,Lua自动释放了怎么办?所以就有了一种比...
分类:
编程语言 时间:
2014-07-09 21:57:05
阅读次数:
343
在lua开发中我们经常会混淆这两者之间的区别,下面通过一个示例来解释: 1 Class = {} 2 Class.__index = Class 3 4 function Class.new(x,y) 5 local cls = {} 6 setmetatable(cls, C...
分类:
其他好文 时间:
2014-07-09 16:51:47
阅读次数:
143
2014-07-08
Lua脚本语言,嵌入在App中扩展开发是很不错的。
关于Android与Lua的环境搭配,我直接下载别人编好的.so与.jar(放到libs下就好了)
下面简单介绍一下Android调用Lua中的变量以及赋值
LuaState mLuaState;
mLuaState = LuaStateFactory.newLuaState();
m...
分类:
移动开发 时间:
2014-07-09 09:34:41
阅读次数:
236
PreMake可以自动生成多个平台的MakeFile,比起其它的MakeFile生成软件(qmake, cmake),它最大的特点应该是它的工程文件其实是使用LUA语言编写的脚本,这样一来,它的工程文件可以拥有非常强大的表达能力。
PreMake的官方网站是:http://premake.sourceforge.net。可以下载到它的最新版本,仅仅一个可执行文件(大约230K),随便把它解压缩到...
分类:
其他好文 时间:
2014-07-08 21:17:59
阅读次数:
322
一、打开vs2010
二、创建项目
新建项目->win32控制台应用程序->下一步->应用程序设置中选择静态库,不勾选预编译头->完成。具体如下图:
三、拷贝源码
将lua源码中的*.h文件拷贝到项目的头文件文件夹下,将lua源码中的*.c文件拷贝到项目的源文件文件夹下。
四、生成lua.lib
项目右键->生成。此时即可在项目的Debug文件夹下看到生成的 lua.lib了。...
分类:
其他好文 时间:
2014-07-08 11:24:01
阅读次数:
195
在前一篇文章中,我们已经讲了如何编译lua源码并生成lua.lib(http://blog.csdn.net/wangbin_jxust/article/details/37557807),在新的项目中,学习如何使用c++调用lua。
一、创建项目
同样在该解决方案中,右键解决方案->添加项目->命名为testlua,选择win32控制台程序->不需要其他配置,选择完成。
二、配置项目
右...
分类:
编程语言 时间:
2014-07-08 11:10:56
阅读次数:
429
module("PathUtil",
package.seeall)
local _map_data --
地图数据
local _open_list --
开放节点
local _open_map --
开放节点,为了提高性能而加
local _close_map --
关闭节点
local _deleget...
分类:
其他好文 时间:
2014-07-08 10:36:34
阅读次数:
271
最近使用LUA开发手游,团队里大神自研了个框架,底层C++渲染,上层LUA处理逻辑。
LUA的IDE选择LDT,不爽的是它不能自动启动模拟器,看过COCOSIDE能自启动,于是我想改造下LDT让它支持自启动模拟器。
参考原型:http://wiki.eclipse.org/Koneki/LDT/Developer_Area/Building_LDT_from_source
注意地方:...
分类:
其他好文 时间:
2014-07-06 12:35:31
阅读次数:
240
注意:mac ox ,lua version :5.15
下载lua官网的lua,
注意:最好是5.15以下,5.2的lua不支持table的getn()方法,这让我情何以堪。(获取table长度,相当与cout,size,length)
下载解压,
cd 目录
make macosx
sudo make install (是的,就是小写的install,虽然文件夹下的是INS...
分类:
其他好文 时间:
2014-07-06 08:40:44
阅读次数:
187
看了不少人的,主要还是错误处理有点问题,不多说了贴代码:require "lfs"function getpathes(rootpath, pathes) pathes = pathes or {} ret, files, iter = pcall(lfs.dir, rootpath) ...
分类:
其他好文 时间:
2014-07-05 22:07:38
阅读次数:
471