테이블의 복잡한 테이블을 만들고 변수를 인덱스로 사용했습니다. 어떤 이유로 나는 코드가 매우 버그가있는 문제가있었습니다.문자열과 정수 사이의 Lua 테이블 인덱싱 문제
은 내가 그래서 다른
myTable[tostring(index)]
되기 위해 필요한
myTable[index]
이
때때로 인덱스가 문자열의 역할을 할
를 문자열로 인덱스를 변환 할 필요가 있다고 밝혀졌다 그리고 다른 시간에 그것은 정수로 행동 할 것이다 (나는 결코 인덱스를 문자열로 변환하지 않았다. y를 코드에서 비록.
myTable[1]
과 myTable["1"]
이 생성되어 둘 다 다르므로 문제가 발생합니다 (k/v 쌍을 반복하므로 회 돌이가 발생하므로 myTable[1]
이 표시되지 않음).
이것은 매우 이상한 행동이지만 예상 되나요? 이 키드 패드를 피할 수 있도록 항상 문자열 인덱스를 사용하는 테이블을 기반으로 새로운 유형을 만드는 방법이 있습니까?