2013-05-23 3 views
2
Horse_Apple = "Happy Horse" 

local var = Animal() .. "_" .. Food() 

print(var) 

여기서 누군가가 내가 여기서 풀려고하는 문제를 이해하기를 바랍니다. Animal()은 "Horse"를 반환하고 Food()는 "Apple"을 반환합니다.다른 변수에서 변수를 읽는 방법

내가하려고하는 것은 'var'변수를 읽고 'Horse_Apple'값을 "Happy Horse"를 반환하는 변수로 읽는 것입니다. 이 메신저 해결책을 찾기 위해 노력하는만큼 많은 시간을 허비하고 있습니다. 고마워요.

+1

당신은 어떤 답을 찾을 수 있습니다 여기에 http://howto.oz-apps.com/2011/09/creating-dynamic-variables.html/http://stackoverflow.com/questions/ 5061755/how-do-make-a-dynamic-variable-name-in-lua – RelevantUsername

답변

5

당신은 _G를 사용하여 동적 이름으로 전역 변수에 액세스 할 수 있습니다, 예 :

print(_G[var]) 

일반적으로 이것은 좋은 디자인 간주되지 않습니다 : 그것은 더 나은 Horse_Apple 일부 테이블의 키를 만드는 대신 해당 테이블에 액세스 할 수 이 같은 :

values = { Horse_Apple="Happy Horse" } 
local var = Animal() .. "_" .. Food() 
print values[var] 
+4

좋은 디자인으로 간주되지 않는 부분은 전역 변수를 사용하는 부분이지'_G '를 사용하여 전역 테이블에 액세스하는 부분이 아닙니다. –

+0

고마워요! 저에게 한 두통을 저장하셨습니다 :) – CrazyCactuaR

+0

당신은 그의 대답을 확인하여 그를 감사해야합니다;) – greatwolf

관련 문제