2014-09-02 42 views
0

所以我想创造LUA的ArrayList下面这个模块如何在lua中调用此方法?

https://github.com/SnakeSVx/spacebuild/blob/master/lua/includes/modules/arraylist.lua#L26

首先,我开始与

l = ArrayList:Create() 

现在我试图创建列表本身

l.list = List:Create() 

但是,这不是正确的做法。该方法是这样的

function list:Create(thetype, isfunc) 
self:SetCheckType(thetype, isfunc) 
self.table = {} 
end 
+0

那么你的问题是什么? – 2014-09-02 16:11:02

+0

这个[l.list = List:Create()]不起作用,我如何在上面的模块中实例化一个arrayList? – thirdage 2014-09-02 16:13:51

+0

尝试'l = ArrayList.Create()'。 – 2014-09-02 16:44:24

回答

1

要创建具有该模块的目的,使用记录创建对象的功能:

local l = ArrayList.Create() 

Create是在由模块创建的命名空间的非法函数( “数组列表”)。它的定义和文档从第364行开始。

模块中的大多数其他功能都是方法。所以,你会使用Lua的方法语法将实例传递给他们(instance:method(...)

l:Add(item, index) 
+0

好的,如果我做了l = ArrayList.Create(),我该如何开始添加数据l.Add()或l.list.Add()? – thirdage 2014-09-02 17:26:28

+0

看看源代码。 'ArrayList.Create'返回的表是否有'list'属性? – 2014-09-02 17:28:34

+1

编辑答案来解释方法调用。 – 2014-09-02 17:38:48

相关问题