루아

2014-06-21 3 views
0

에 문자열 테이블 이름을 만들기 위해 어떻게 이런 루아 테이블이 있습니다루아

table2 = {} 

을 내가있는 값이 있습니다

value = 2 

다음을, 나는 선언 할 이 값을 통해 테이블 ​​이름 :

tableName = "table"..value 

그러나 그것은 nil을 반환하므로 테이블 이름을 선언하지 않습니다.

아무도 말해 줄 수 있습니까? 나는이 형식을 통해 그것을 선언 할 수있는 방법 table1table2table3 ... tableN ... 같은 여러 테이블이있는 경우 내 말은 :

tablename = "table"..value 
+0

언어는 명시 적으로 "LUA"로 지정되어서는 안됩니다. ** 모든 패키지는 어쨌든 아파합니다. 그 이름은 루아입니다. –

답변

2
tableName = "table" .. value 

tableName이 값 "table2"을 가진 문자열, 메모를 그 이 같은 tostring를 사용하는 것이 바람직 것 :

tableName = "table" .. tostring(value) 

어느 쪽이든을 table2 글로벌 경우, 당신은 그것을 액세스 할 수 _G[tableName]를 사용할 수 있습니다.

+0

은'_G' 대신'_ENV'를 사용하는 것이 더 효율적일 수 있습니다. – Deduplicator

+0

글쎄, 내가 이것을 시도 : 테이블 이름 = "테이블".. tostring (값) 하지만 nil 반환합니다. 나는 _G와 _ENV를 시도 할 것이고, 테이블은 어쨌든 세계적이다. – user3762712

+0

@ user3762712이 질문은 내 답변과 중복 질문의 답변으로 문제가 해결되지 않으면 [가장 단순하고 완벽하며 검증 가능한 예제를 작성하는 방법] (http : // stackoverflow. co.kr/help/mcve), 중복이 아니라고 생각되면 질문을 수정하거나, 그렇지 않은 경우 새로운 질문을하십시오. –