11月 212012
 

今天很诡异地遇到这个错误,看意思是排序的比较函数有问题,但自己一开始用各种方式都无法让lua报出这个错,包括给table.sort的第二个参数传入各种稀奇古怪的东西。

后来看到其它论坛里有人也问这问题,那人写了个洗牌程序出这个错了。我想了下,估计是稳定排序和不稳定排序的问题。验证了一下,果然是这样。

原来的比较函数(根据score排序,score相同排lv):

function compFunc(a, b)
    local rst = true
    if not a then
        rst = true
    elseif not b then[......]

继续阅读

2月 272012
 

First:

一直觉得一个module对应一个文件会造成代码膨胀,随着代码增长错误率也跟着增加,所以一直想有个方法去扩展一个module,顺便也能实现状态机模式了。

方法是这样的,在module的table中增加一个extend chain(扩展链),重写主module元表的__index(tb, key)这个函数,如果在本module中找不到key这个函数,则调用extend chain中的key函数。UTF8_EX[……]

继续阅读

linux c代码调用lua的一些注意事项

 linux, lua  linux c代码调用lua的一些注意事项已关闭评论
12月 312010
 

转自http://linux.byexamples.com/archives/406/how-to-embed-lua-51-in-c/

今天编译的时候出错了,百度了一下只有这一个结果

自己留着,以后用得着

 

How to embed Lua 5.1 in C++

Lua
Lua, is a scripting language providing dynamic data structures, maths, io and string manipulations just like any interprete language such as Bas[……]

继续阅读