lua
Nervermore
我是ias
展开
-
lua面向对象编程之点号与冒号的差异详细比较
2011-07-28 02:02 by youxiachai, 9067 阅读, 9 评论, 收藏, 编辑首先,先来一段在lua创建一个类与对象的代码12345678910111213141516171819转载 2014-09-07 19:25:47 · 976 阅读 · 0 评论 -
Lua学习笔记六——package
lua和其他语言一样,也有模块/包的概念,稍微有点不同的是,默认先从环境变量LUA_PATH中搜索lua文件,如果搜索不到,则从LUA_CPATH中搜索C文件。 对于我来说,时而去改变环境变量,则显得麻烦,并且在另外的环境中部署时还要修改环境变量,则显得不人性化,因此,觉得如下方式增加搜索路径比较好: [python] view plainco转载 2015-01-03 14:51:44 · 499 阅读 · 0 评论 -
Lua脚本语法说明(增加lua5.1部份特性)
Lua 的语法比较简单,学习起来也比较省力,但功能却并不弱。 所以,我只简单的归纳一下Lua的一些语法规则,使用起来方便好查就可以了。估计看完了,就懂得怎么写Lua程序了。 在Lua中,一切都是变量,除了关键字。I. 首先是注释 写一个程序,总是少不了注释的。 在Lua中,你可以使用单行注释和多行注释。 单行注释中,连续两个减号"--"表示注释的转载 2014-10-17 14:08:56 · 593 阅读 · 0 评论 -
实现自己的LUA绑定器-一个模板编程挑战
实现LUA绑定器author : Kevin LynxPreface 当LUA脚本调用我们注册的C函数时,我们需要逐个地从LUA栈里取出调用参数,当函数返回时,又需要一个一个地往LUA栈压入返回值,并且我们注册的函数只能是int()(lua_State*)类型。这很不方便,对于上层程序员来说更不方便。 因此我们要做的是,实现一个绑定器,可以把任意pr转载 2014-10-17 13:59:40 · 601 阅读 · 0 评论 -
Metatable In Lua 浅尝辄止
Lua中Metatable这个概念, 国内将他翻译为元表. 元表为重定义Lua中任意一个对象(值)的默认行为提供了一种公开入口. 如同许多OO语言的操作符重载或方法重载. Metatable能够为我们带来非常灵活的编程方式. 具体的说, Lua中每种类型的值都有都有他的默认操作方式, 如, 数字可以做加减乘除等操作, 字符串可以做连接操作, 函数可以做调用操作, 表可以做表项的转载 2014-10-17 15:37:27 · 434 阅读 · 0 评论 -
lua 热更新
热更新主要用于不停机修复bug等。故其重点是更新逻辑代码。切记模块设计时,分为数据和逻辑。1、所有脚本文件,除了入口的文件外,其他都写成module形式;2、模块中不要有文件内的local变量,目前未知此种变量存到哪里了,local修饰的函数无所谓;3、所有的数据部分直接存到_G.game_instance.xxx中,然后直接重新load初始化入口文件,并卸载所有的脚本文件,就会触转载 2014-11-10 11:14:26 · 549 阅读 · 0 评论 -
【cocos2d-x3.2游戏开发】 lua 类, 继承, 面向对象
1.lua中的类 lua中其实是没有类的,有的只是表(table),而类之间的继承也就是将父类的表连到了一起,派生类中没有找到的属性和方法就通过元表查找父类2.lua中类的属性 classA = {width =10, height=10} classA={} classA.width=10 classA.height=10转载 2014-09-09 20:24:09 · 1915 阅读 · 0 评论 -
--Create an class.
--Create an class.function class(classname, super) local superType = type(super) local cls if superType ~= "function" and superType ~= "table" then superTyp转载 2014-09-09 16:26:16 · 531 阅读 · 0 评论 -
class() 高级用法 -- lua
class() 高级用法class() 除了定义纯 Lua 类之外,还可以从 C++ 对象继承类。比如需要创建一个工具栏,并在添加按钮时自动排列已有的按钮,那么我们可以使用如下的代码:-- 从 CCNode 对象派生 Toolbar 类,该类具有 CCNode 的所有属性和行为local Toolbar = class("Toolbar", function()转载 2014-09-09 16:30:37 · 725 阅读 · 0 评论 -
[Lua]用__index/__newindex来限制访问
网友问了一个问题,说对象A在内部可以修改HP.外部对象只能访问对象A的HP,不能修改.这东西其实可以用__index和__newindex来实现.__index指向对象A,这样就可以访问;__newindex重写,修改hp的话,就禁止.就可以完成他的需求.下面给出简单的代码:function cannotModifyHp(转载 2014-09-07 19:46:36 · 660 阅读 · 0 评论 -
Lua脚本语法说明(修订)
Lua脚本语法说明(增加lua5.1部份特性) Lua 的语法比较简单,学习起来也比较省力,但功能却并不弱。 所以,我只简单的归纳一下Lua的一些语法规则,使用起来方便好查就可以了。估计看完了,就懂得怎么写Lua程序了。 在Lua中,一切都是变量,除了关键字。I. 首先是注释 写一个程序,总是少不了注释的。 在Lua中,你可以使用单行注释和多行注释。转载 2014-09-07 19:24:47 · 945 阅读 · 0 评论 -
Quick-Cocos2D-X 并成功运行示例代码
有好多天没有写博文了,今天三国制霸iOS版本进度快结束了。自己也终于有时间继续写博文与大家交流。今年,中国的手机网游市场很火,很多公司也需要Cocos2d的人才,所以有很多做页游端游的同行也一起加入了手游的大家庭(同时也增加了竞争力)。不过这样也是件好事,有追赶的时候,我们进步的能更快。 但是,如何能让自己在如此之多的同行之中脱颖而出呢?答案就在转载 2014-09-07 21:11:12 · 2733 阅读 · 0 评论 -
关于setpeer和getpeer的作用
每个C++对象需要存贮自己的成员变量的值,这个值不能够存贮在元表里(因为元表是类共用的),所以每个对象要用一个私有的表来存贮,这个表在tolua里叫做peer表。元表的__index指向了一个C函数,当在Lua中要访问一个C++对象的成员变量(准确的说是一个域)时,会调用这个C函数,在这个C函数中,会查找各个关联表来取得要访问的域,这其中就包括peer表的查询。转载 2014-09-07 19:48:34 · 4858 阅读 · 0 评论 -
Lua常用的4中遍历方式
for key, value in pairs(tbtest) do XXX end 这样的遍历顺序并非是tbtest中table的排列顺序,而是根据tbtest中key的hash值排列的顺序来遍历的。for key, value in ipairs(tbtest) do XXX end 这样的循环必须要求tbtest中的key为顺转载 2015-06-03 10:27:47 · 1582 阅读 · 0 评论