
lua
BUG日日新
这个作者很懒,什么都没留下…
展开
-
Lua协同机制详解
今天再写点简单的控制线程挂起的操作,coroutine.yield()这个函数的使用,从协同的观点看:使用函数yield可以使程序挂起,当我们激活被挂起的程序时,将从函数yield的位置继续执行程序,直到再次遇到yield或程序结束。首先我们先看一段代码,如下: co = coroutine.create(function () for i原创 2012-07-26 13:33:54 · 1683 阅读 · 0 评论 -
Lua做为c++程序的配置文件
2013年春节过后,愿大家都节日快乐,同时为还活着的程序猿们祈祷,当然死了的也看不到这个文章啦**先开个小小的玩笑,下面开始正题。介绍下Lua做为c++程序的配置文件的用法大家可能习惯了用xml作为配置文件,其实很多时候我们也可以使用脚本作为程序的配置文件,这样程序既可以添加入脚本又可以使用配置文件,作为一种脚本语言做配置文件自然可以,用lua的好处有几个方面,1.是它天生和c原创 2013-02-19 14:43:00 · 2273 阅读 · 0 评论 -
lua的中文支持,修改了其中的语法分析器
相信各种大神喜欢利用中文来处理策划,为了方便各种策划童鞋来进行游戏策划,鉴于大家都是中国人,英语的程度和对游戏解释的程度都不如自己的母语,所以本人从各处学习找到了在最新版本中文的支持。static int llex (LexState *ls, SemInfo *seminfo) { luaZ_resetbuffer(ls->buff); for (;;) { switch (原创 2012-11-21 16:35:16 · 2929 阅读 · 0 评论 -
MYGUI在win7下的中文完美输入及其显示
先来看张截图:首先,mygui编译选择MYGUI_SAMPLE_INPUT选择为3,我们来修改common文件夹下的InputManager.cpp中的两个函数一个是LRESULT CALLBACK InputManager::windowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)加入以下代码else i原创 2012-10-08 16:39:11 · 2948 阅读 · 1 评论 -
Lua部分源代码分析(讨论lua的库是如何实现)
我们在使用lua的时候一定觉得这门语言很高级,什么都不用去处理而且速度很快,超过了一般的脚本语言,这是因为其实lua内部是由c来管理内存的分配和释放的,用起来有点像java的垃圾回收器一样,但完全不是一个东西,看过lua源码的人都知道,它是自己建立了一套lua内存管理机制的,由c语言完成真正的内存分配和释放。异同点只要看垃圾回收机制的三大要素就知道了。 今天我来说下lua中有内置原创 2012-09-02 21:56:39 · 2592 阅读 · 0 评论 -
Lua抢占式多线程的编写(windows7系统)
写了那么久的单线程程序大家一定认为Lua只能实现简单的单线程的程序,当然如果你只用lua的话只能是单线程运行,然而如果你要用多线程,就需要找一个运行平台来做,windows或者linux都可以,这里我选择windows,Lua版本为5.2.1版本。 如果不太了解windows下多线程的可以先看下createthread这个函数的用法,然后结合我的http:/原创 2012-08-14 18:57:17 · 3227 阅读 · 0 评论 -
Lua中string库用法二(有关于引号的处理)
好了我们继续上篇的内容进行说明(http://blog.youkuaiyun.com/xueyunf/article/details/7857509),如果对lua中string用法有些了解就不用看第一篇了,今天想说的只是gsub这个函数的第四个参数可选参数的用法,当然一样先来看下代码:s = string.gsub("all lii", "l", "x", 1)print(s)为了方便大家的查看原创 2012-08-13 11:52:02 · 7795 阅读 · 0 评论 -
lua中关于string标准库的用法一
经过2个星期的休息,我又归来了,现在和大家讨论下如何使用string这个标准库的一些函数,及其解释下其作用。代码依然是利用luaedit调试。好了让我们开始今天我的心得吧! 第一个例子依然采用lua programing书中比较经典的例子,代码如下: print(string.gsub("hello, up-down!"原创 2012-08-12 18:46:12 · 3750 阅读 · 0 评论 -
用lua从写一次最大子数组问题
这回由于Lua 的语法比较强大,所以直接写出代码 别的不多说了,我们可以看到lua写这种逻辑是多么有快感。可以返回多个值,使算法看起来是这么的自然。附上源代码:function FIND_CROSSING_SUBARRAY (A,low,mid,high) local left_sum = -10000; local sum = 0; local max_left; l原创 2013-04-25 21:21:49 · 1167 阅读 · 0 评论