- 博客(15)
- 资源 (23)
- 收藏
- 关注
原创 Lua编程(八)协同程序的高级用法——生产者-消费者问题
这个问题是比较经典的啦,基本所有语言的多线程都会涉及到,但是没想到Lua的这个这么复杂 看了好长时间才算看明白,先上个逻辑图: 开始时调用消费者,当消费者需要值时,再调用生产者生产值,生产者生产值后停止,直到消费者再次请求。设计为消费者驱动的设计。 图画的不太好,可以先将Filter遮住,它是过滤器对两个程序之间传递的信息进行处理。去掉Filter逻辑就更清晰
2011-11-29 14:55:38 4299
原创 Lua编程(七)协同程序基础逻辑
co=coroutine.create(function() print("hi")end)print(coroutine.status(co))coroutine.resume(co)print(coroutine.status(co))print()co=coroutine.create(function() for i=1,2 do print("c
2011-11-28 18:30:55 1890
原创 Lua编程(六)C对Lua函数的调用
C++端: #include "stdafx.h"lua_State *L;void load_lua(lua_State **L,char *filename){ *L=luaL_newstate(); luaL_openlibs(*L); if(luaL_loadfile(*L,filename) || lua_pcall(*L,0,0,0)){ luaL
2011-11-28 11:54:14 2180
原创 Lua编程(五) C对Lua表的读取和添加
C端代码:#include "stdafx.h"lua_State *L;void load_lua(char *filename){ L=luaL_newstate(); luaL_openlibs(L); if((luaL_loadfile(L,filename) || lua_pcall(L,0,0,0))!= 0){ luaL_error(L,"l
2011-11-24 19:19:58 7095
原创 Lua编程(四) Lua标准库:表库、字符串库、系统库
tb1 = { "alpha","log","gamme"}print(table.concat(tb1," , "))print(table.concat(tb1,"\n",nil,2))print()tb1[88.99] = 'aaa'--返回索引值最大的值,并且计算小数print(table.maxn(tb1))print()--默认删除索引最大的
2011-11-24 17:56:43 2645
原创 Lua编程(三) 稀疏表、双端队列、格式化输出、表和循环表的格式化输出
a={}for i=1,10 do a[i]={} for j=0,10 do if(i%2==0) then a[i][j]=0 end endendprint(a[9][10])print(a[10][10])print()--双端队列List={}function List.new() return {fir
2011-11-24 11:41:18 4402
原创 Lua编程(二) 表面向对象、metatable对表进行扩展
counter = { count = 0}function counter.get(self) return self.countendfunction counter:inc() self.count=self.count+1endprint(counter.get(counter))counter.inc(counter)print(cou
2011-11-23 17:56:29 2420
原创 Lua编程(一) select、debug、可变参数、table操作、error
function test_print(...) for i=1,select("#",...) do print(i,select(i,...)) endendtest_print(11,12,13,14)print()print(debug.traceback())print()function test(...) for i=1,arg
2011-11-23 17:50:22 7522
原创 VS2008 Lua项目配置
在VS2008中配置路径 1、项目属性->配置属性->c/c++->常规->附加包含目录->将lua的includ文件夹位置填入 2、项目属性->配置属性->链接器->常规->附加到库目录->将lua的lib文件夹位置填入 3、项目属性->配置属性->链接器->输入->lua51.lib lua5.1.lib
2011-11-21 16:13:17 3076
原创 Lua 函数用法探究
在Lua 基本语法快速入门 中有涉及到函数的用法,但只是普通的应用,并没有深成次的研究一下,介于函数用的还是比较多的就专门做个专题研究一下~ 一、函数、变量的用法 函数的定义用关键字function 。然后加函数名和变量。注意后面没有do。最后以end结束。 在函数中的变量默认是全局变量,但通常情况下函数中的变量都是在函数中有效
2011-11-21 13:57:12 5475
原创 在Lua中调用C函数
Lua当然也能够调用C中定义的函数。一个平均数的例子,解释一下。 下面给出的C++函数average()演示了如何接受多个参数且返回超过一个值。 lua_gettop函数返回栈顶的索引值。因为在Lua中栈是从1开始编号的,因此该函数获得的值就是参数的个数。 在for循环中计算所有参数之和。 调用lua_pushnumber()将参数的平均值压栈。
2011-11-18 18:07:57 5410
原创 在C中调用Lua作配置文件和响应函数
Lua是脚本语言,最大的优势就是轻巧灵便,不用编译。当C的框架写好,只要更改lua的相应处理即可以更改功能,并且不用重新编译。以下是在C中调用Lua资源方法的示例程序: C++端: // Lua1.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#includeextern "C" { //如不用extern会出现连接错误
2011-11-18 17:12:07 4513
原创 Lua 基本语法快速入门
Lua语法与C语言有些相似也不太一样,写了语句学一下 --begina = --[[explain]] "ha";print(a)if a == "ha" then print("if test passed")else print("if used wrong")endb,c=2,3print(b,c)b,c=c,bi
2011-11-17 17:56:41 5014
原创 Lua 在 windows上的环境配置
环境:luafor windows (lfW)主页:http://luaforwindows.luaforge.net/lua for windows其实是一整套Lua的开发环境,它包括:Lua Interpreter(Lua解释器)Lua Reference Manual(Lua参考手册) Quick Lua Tour (Lua快速入门)Examples (Lua
2011-11-17 17:43:45 22175 1
原创 UDP 聊天室
学过Socket编程,连个UDP聊天室也没写过实在是说不过去了。写个简单的聊天室。客户端通过向服务器发送数据进行对话。所有信息在服务端显示。 运行效果: 服务端:[fsy@localhost my_socket]$ ./udpscreate socket.bind address to socket.fsy said: i'm coming~saosa
2011-11-02 21:30:56 4718 5
Cocos2d-x 3.x 开发(十八)自动Batch和自动剔除
2014-05-25
Cocos2d-x 3.0开发(三)点击交互的四种处理beta2版代码
2014-01-30
Cocos2d-x 3.0 开发(十五)使用UILayout布局,制作对话界面
2013-12-17
Cocos2d-x 3.0 开发(十四)使用UIScrollView 实现大小不同物品拖动展示
2013-12-12
Cocos2d-x 3.0 开发(九)使用Physicals代替Box2D和chipmunk的3.0 alpha1新版本
2013-12-03
Cocos2d-x 3.0开发(十三)使用CocoStudio编辑帧事件并关联到程序
2013-11-27
Cocos2d-x 3.0 开发(十)使用CocoStudio场景编辑器关联组件
2013-11-08
Cocos2d-x 3.0 开发(九)使用Physicals代替Box2D和chipmunk
2013-11-04
Cocos2d-x 3.0 开发(八)骨骼动画的动态换肤
2013-10-25
Cocos2d-x 3.0 开发(七)在程序中处理cocoStudio导出动画Demo
2013-10-22
Cocos2d-x 3.0 关联程序逻辑与cocoStudio导出文件
2013-10-16
Cocos2d-x3.0 使用CocoStudio创建UI并加载到程序中
2013-10-15
Cocos2d-x3.0 四种点击交互处理Demo
2013-10-14
Excel 配置导出实例
2013-08-15
获取 ios 系统网络状况、电量
2013-05-14
TMX官方忍者游戏cocos2d-x实现(三)
2013-05-03
TMX官方忍者游戏cocos2d-x实现(一)
2013-04-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人