问题场景:我们的游戏在支付时,由于第三方支付比较费时,可能在支付的过程中,我们lua写的cocos2dx项目会断网,我们的游戏有自动重连的机制。我就想,如果断线好了以后,支付完成了,那在断网之前传入的回调函数是否能被成功执行到呢?就在网上发现了这篇文章http://dualface.github.i...
分类:
其他好文 时间:
2014-07-25 18:53:32
阅读次数:
437
Lua中的“尾调用”就是一种类似于goto的函数调用,当一个函数调用是另一个函数的最后一个动作时,该调用才算是一条“尾调用”。【一个函数在调用完另一个函数之后,是否就无其他事情需要...
分类:
其他好文 时间:
2014-07-25 00:03:04
阅读次数:
236
文章出处:http://blog.csdn.net/lanphaday/archive/2010/03/19/5397038.aspx 协程,又称微线程和纤程等,据说源于 Simula 和 Modula-2 语言(我没有深究,有错请指正),现代编程语言基本上都有支持,比方 Lua、ruby 和最新的...
分类:
其他好文 时间:
2014-07-24 21:56:12
阅读次数:
216
开发游戏服务器往往有“热更新”的需求,就是在不停止服务程序的情况下,对服务程序进行升级。这里采用lua脚本桥接C++的模式。程序主框架用C++,程序的业务逻辑也是C++(具体的是C++写的DLL),这两者之间用LUA脚本语言进行桥接。当程序运行时,只要改变LUA脚本,即可以选择使用不同的DLL,以实现业务逻辑的升级更新。...
分类:
编程语言 时间:
2014-07-24 17:38:26
阅读次数:
306
面向对象不是针对某一门语言,而是一种思想,在面向过程的语言也可以使用面向对象的思想来进行编程。在Lua中,并没有面向对象的概念存在,没有类的定义和子类的定义,但同样在Lua中可以利用面向对象的思想来实现面向对象的类继承。一、复制表的方式面向对象1234567891011121314151617181...
分类:
其他好文 时间:
2014-07-24 17:04:25
阅读次数:
202
自己给自己庆祝一下。 今天发布了自己第一款开源项目,也算是给it行业做了点贡献,不再是完全的索取者了,希望大家喜欢。支持开源,支持共享! 这款LuaHttpd,是可以用lua做脚本解析器的http服务器。采用异步回调的方式,大大减少服务器消耗。作为第一版[0.1.0.0],已支持Mysql数据库访问...
分类:
其他好文 时间:
2014-07-24 16:58:58
阅读次数:
209
前言元表对应的英文是metatable,元方法是metamethod。我们都知道,在C++中,两个类是无法直接相加的,但是,如果你重载了“+”符号,就可以进行类的加法运算。在Lua中也有这个道理,两个table类型的变量,你是无法直接进行“+”操作的,如果你定义了一个指定的函数,就可以进行了。那这篇...
分类:
其他好文 时间:
2014-07-24 12:22:05
阅读次数:
320
Lua中的函数和C++中的函数的含义是一致的,Lua中的函数格式如下:123functionMyFunc(param)--Dosomethingend在调用函数时,也需要将对应的参数放在一对圆括号中,即使调用函数时没有参数,也必须写出一对空括号。对于这个规则只有一种特殊的例外情况:一个函数若只有一个...
分类:
其他好文 时间:
2014-07-24 12:18:35
阅读次数:
290
赋值赋值的基本含义是修改一个变量或一个table中字段的值,这个和其它语言没有多少区别,但是对于Lua,有一个特性,它允许“多重赋值”,也就是一下子将多个值赋予多个变量,例如以下代码:123localx1,x2=2,4print(x1)-->2print(x2)-->4在多重赋值中,Lua先对等号右...
分类:
其他好文 时间:
2014-07-24 12:18:25
阅读次数:
256
前言协同程序与线程差不多,也就是一条执行序列,拥有自己独立的栈、局部变量和指令指针,同时又与其它协同程序共享全局变量和其它大部分东西。从概念上讲,线程与协同程序的主要区别在于,一个具有多个线程的程序可以同时运行几个线程,而协同程序却需要彼此协作的运行。就是说,一个具有多个协同程序的程序在任意时刻只能...
分类:
其他好文 时间:
2014-07-24 12:18:05
阅读次数:
188