如何在函数内调用一个对象?

如何在函数内调用对象?例如:pencil对象在函数内,关闭函数后,我必须使用以下代码:

pencil:removeEventListener ("touch", moveLapis)

我该怎么做?

当我正常调用它时,出现错误,提示pencilnil

点赞
用户1381216
用户1381216

你不能这样做。函数内的对象只能在该作用域内被调用,如果想要从外部调用它,你必须把 pencil 对象移到函数外部,或者在函数外部添加对其的引用。

例如:

local pencil
local function myFunction()
   pencil = newPencil()
end

if pencil then
    pencil:removeEventListener ("touch", moveLapis)
end

当然,在调用函数之前,你必须检查 pencil 是否有值或者做某种形式的验证,以避免错误。

2014-05-13 17:35:40