1
나는이 내 코드는 ... 루아 메타 테이블에 대한 몇 가지 질문이 있습니다 :루아 메타 테이블 변수
setmetatable(t1, mb)
setmetatable(t2, mb)
print("t1:", getmetatable(t1))
print("t2:", getmetatable(t2))
mb.__index = mb
print(t1.a)
t1.a = 2
print(t2.a)
mb.a = 3
print(t1.a)
print(t2.a)
이 출력됩니다 :
t1: table: 00D62D88
t2: table: 00D62D88
1
1
2
3
출력은 나에게 그 T1을 보여주고 T2는 같은있다 metatable mb (같은 주소), 나는 t1.a 및 t2.a mb.a, 그들은 같은 변수라고 생각합니다. 하지만 t1.a에 새로운 값을 주면 t2.a는 변경되지 않습니다. mb.a에 새로운 값을 주면 t3가 변경됩니다! 다른 사람이 어떻게되는지 설명 할 수 있습니까?
예, 이해했습니다. 감사! – ChangHao