前言

在平常开发过程中,总会遇到一些需求点,做下记录。

正文

lua 中 . 和 : 的区别

  • 首先在lua中使用“:”定义的函数会自动传入一个名为self的变量,这个变量是隐含的,self同c++中的this一样,表示当前对象的指针:而“.”定义的函数中没有self。
1
2
3
4
5
6
7
8
9
10
11
12
13
function  class:func2( )  end
function class.func1(self) end
--这时候这两个函数等价

function MainScene:ctor()
self:ceshi(1,2,3)
end
function MainScene:ceshi(a,b,c)
print(a,b,c)
end

> 输出: 1 2 3

table 排序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function asc()
-- 升序
table.sort(test_table)
end

function desc()
if args and #args > 1 then
-- 做倒序处理
table.sort(args, function(a, b)
return (a > b)
end)
end
end


to be continued…