lua学习笔记
yongtao_liu
移动游戏 游戏
展开
-
lua中的面向对象
--[[lua中面向对象编程 lua中用table去模拟类 其实反思一下,很简单把变量放到table里面,把函数抽象出来放到外面就行了]]Account = { balance = 3}--注意下面这两种函数的写法function Account.count( self,v ) self.balance = self.balance + v print("v原创 2015-07-22 16:55:15 · 339 阅读 · 0 评论 -
LuaTinker
LuaTinker的作者是Kwon-il Lee韩国人写的,最新的版本是0.2.C,这个C++ wrapper For Lua能够方便和快捷与C/C++通信,LuaTinker参考了luabind和luaplus的特征写的,虽然没有bindlua和luaplus这本强大和提供很多功能,LuaTinker的实现只有两个文件,但是LuaTinker提供的基本能够满足大部的要求,用户还可以对它进一步的扩充转载 2015-06-25 17:13:34 · 426 阅读 · 0 评论 -
初学lua的几个博客 挺好的
http://cn.cocos2d-x.org/tutorial/lists?id=73&per_page=18 http://www.cnblogs.com/sevenyuan/p/4511808.html http://www.jellythink.com/archives/554 http://eric-weitm.iteye.com/ http://book.luaer.cn/原创 2015-05-31 12:11:22 · 403 阅读 · 0 评论 -
lua中的Serialization
--Serialization 写成流可以和网络进行联通function serialize( o ) if type( o ) == "number" then io.write(o) elseif type(o) == "string" then io.write("[[",o,"]]") endenda = 'a, "hello原创 2015-07-22 16:52:25 · 1129 阅读 · 0 评论 -
lua中的模块
[[1、学习lua中require2、编写模块module的基本方法3、module函数]]--[[ require 相当于会把它所包含的 文件内容copy到当前路径下(C、C++) 1、判断这个包是否存在 2、判断包是否加载 3、如果没有返回nil或者报错 4、反之则返回相应的模块对象 如果app/test/cc.lua req原创 2015-07-22 16:53:58 · 342 阅读 · 0 评论 -
lua中的table库
--[[ lua中的table库 1、插入和删除函数 2、排序 3、链接 4、删除 5、获取table的长度]]--[[t = { 1, 2, 3}--insert--table.insert(table,[pos,]value)table.insert(t,1,10)table.insert(t, 12) --原创 2015-07-22 16:59:41 · 449 阅读 · 0 评论 -
lua中的table
-- and 和or 可以理解成我执行到哪儿, 然后就返回的意思print (1 or 3)print (nil and 3)print(not nil)print(not 1)print (not false)--循环语句-- 在lua中没有++ 和 -- --whilemttable = {1,2,2,3}local i = 1while mttable[i] do原创 2015-07-22 16:51:27 · 459 阅读 · 0 评论 -
lua中的数学库
--[[ lua中的数学库 1、获取系统时间的函数 2、三角函数 3、指数对数函数 4、取整函数 5、max和min 6、生成伪随机数]] --获取系统时间,例如在网游中每日登陆的时候,就可以获取到当前时间和上次登陆的时间就可以提示是否领取奖励 print(os.time()) --math原创 2015-07-22 16:58:46 · 377 阅读 · 0 评论 -
lua中的string
--[[ lua中的string库 1、find函数 2、match函数 3、截字符串函数 4、删除 5、替换]]--string.find 返回字符串所在的位置区间local TestStr = "Lua , HelloWorld"i, j = string.find(TestStr, "Hello")--模式匹配print("first原创 2015-07-22 17:00:22 · 430 阅读 · 0 评论 -
lua中的io
--[[ Lua中的IO模型 1、了解模型中的read和write 2、IO库复杂模型的性能小诀窍 读取二进制文件(就是在原来的基础上加b) local f = assert(io.open("ok.txt",'rb'))--local m = require("io")--m.write("ok\n")io.write("ok\n")io原创 2015-07-22 17:01:26 · 831 阅读 · 0 评论 -
lua与C/Cpp交互与集成
在C/C++中集成lua1、把lua.c、makefile、luac.c这几个文件删除2、对于xcode如果出现报错的情况处理,在lua的文件夹中查看解决办法从C/C++项目中读取lua中的变量 lua_getglobal(L, "name")--直接把数字放到栈顶 if(lua_isnumber(l, -1)) int width = (int)lua_tonumber原创 2015-07-22 17:02:48 · 864 阅读 · 0 评论 -
lua中的私密性和单一方法实现
--[[1、学习在面向对象 私密性 实现的方式2、单一方法的做法思想:两个table 一个是用来表示对象的状态 另一个用来表示状态,接口 我们的table是用第二个接口来实现访问的 像其他语言中的单例(私密性)]]function newAccount( initlizedBanlance) local self = { balance = initlizedB原创 2015-07-22 16:57:41 · 597 阅读 · 0 评论 -
lua中的继承和多继承
--[[ lua中如何实现实现伪承]]----setmetatable(a,b)--[[Account = {num = 10}function Account:new( o ) o = o or {} setmetatable(o,self) --Account是o的原型 self.__index = self -- r原创 2015-07-22 16:56:26 · 1309 阅读 · 0 评论 -
tolua++入门
tolua++使用SCons进行编译,我们也可以使用自己喜欢的IDE新建一个控制台(Console)工程,然后将源码下bin目录中所有文件加入到工程中,直接编译即可;同样地,新建一个静态库(Static Library)工程,将源码下lib目录中所有文件加入进入,编译即可。当然了,这些工程是需要lua库支持的。 经过上面的步骤,在Windows系统上的话,你会得到tolua++.exe和tolu转载 2015-07-01 18:50:13 · 887 阅读 · 0 评论