이미 글로벌 변수 아래에 루프트 테이블 A={}, A.B={}
이 있습니다. 나는 루아 테이블 D1={}, D1.D2={}
을 생성하는 함수를 가지고 있지만이 함수는 테이블을 전역 변수 목록에 배치합니다. 모든 lua 값을 출력하면 A={}, A.B={}, D1=={}, D1.D2={}
이 인쇄됩니다. 거기에 A={}, A.B={}
아래의 테이블 아래에 함수를 만들 수있는 방법이 있나요 출력을 의미 : A={}, A.B={}, A.B.D1=={}, A.B.D1.D2={}
. source-table의 hirarchy가 알려지지 않았기 때문에 table.insert()를 사용하고 싶지 않습니다.루아는 테이블 추가를 허용하지 않습니다.
-2
A
답변
2
여기에 원하는 것처럼 들리면 D1
및 D1.D2
이라는 함수를 테이블에 전달하면 원하는 값을 추가 할 수 있습니다.
function addTable(tbl)
tbl.D1 = {}
tbl.D1.D2 = {'test'}
end
addTable(A.B)
-- now you can call A.B.D1.D2
print(A.B.D1.D2[1]) -- prints 'test'
+0
과제도 할당 할 필요가 없습니다. addTable의 본문에서'tbl.D1 = {D2 = { 'test'}}'를 사용할 수 있습니다. –
'table.insert'는 색인 삽입에서만 작동합니다. 키와 함께 삽입 할 수 없습니다. – greatwolf
http://stackoverflow.com/questions/17525622/how-to-prefix-a-lu-table에서 이미 질문하지 않았습니까? – dualed