2014-05-13 3 views
1

함수 안에서 객체를 호출하는 방법은 무엇입니까? 예 : pencil 객체는 함수 내에서, 그리고 그것을 닫은 후, 나는 그렇게 어떻게함수 내에서 객체를 호출하는 방법은 무엇입니까?

pencil:removeEventListener ("touch", moveLapis) 

을 사용할 수 있나요? 내가 정상적으로를 호출 할 때 들어

는 오류가 연필 당신은 할 수 없습니다 nil

답변

4

것은 말할. 함수 내부의 객체는 외부에서 호출 할 수 있도록 해당 범위 내에서만 호출 할 수 있습니다. pencil 객체를 함수 외부로 이동하거나 함수 외부에 참조를 추가해야합니다. 예를 들어

는 :

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

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

, 당신은 연필 값이나 오류를 방지하기 위해 함수를 호출하기 전에 검증의 어떤 종류가 있는지 확인해야합니다.

+2

함수에서'pencil' 객체 만 가져올 수 있고 실제로 함수 호출 후에 이벤트 수신기를 제거해야하는 경우 함수에서 반환 할 수 있습니다. – catwell

+0

글쎄, 이건 분명히 내 사건을 해결하지 못한다. 왜냐하면 나는 "if"가 많은 문제를 줄 것이지만, 모든 코드가 함수 안에 있기 때문에 ... 그러나 도움을 주려는 것에 감사하다. {: – user3602803

관련 문제