![]() |
|
||||||||
경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지 |
|
자게란에 질문이라 좀 거시기하기는 하지만... 일단 답변을 달아봅니다.
우답부터 던지면, "김두환"은 myData.name 에 저장하셨으니 myData.name 으로 참조하셔야죠. ^^; 이 외의 방법으로... 테이블에 점 연산자로 할당한 값은 다음과 같이 해당 키 문자열을 배열의 첨자값으로 접근할 수 있습니다. print(myData["name"]) print(myData["class"]) 그리고... table.getn() 의 경우는 숫자형 키 중 가장 큰 값을 내놓게 되지요. 말씀하신 경우에는 3이 되구요. 루아 5.1 부터는 # 연산자로 동일한 값을 얻을 수도 있습니다. print(#myData) 이렇게 테이블의 키값으로 문자열과 숫자값이 마구 뒤섞여있는 경우... for문 등으로 모든 요소에 접근하려면 pairs() 라는 함수를 사용할 수 있습니다. for KeyStr in pairs(myData) do print(KeyStr, myData[KeyStr]) end; 그리고 루아의 쩜 연산자 색인은 문자열만 가능하다는 이야기는, 담기는 내용이 아닌 색인 자체에 대한 언급일 거에요. 실제 루아의 테이블은 루아에서 사용되는 자료형이라면 어떤 것이건 담을 수 있으니까요. 관련 글 리스트
|
Copyright © 1999-2015, borlandforum.com. All right reserved. |
루아에서 마침표 색인(key)는 오직 문자열만 저장할 수 있다고 하는데,
myData.str = math.random(3, 18)
myData.dex = math.random(3, 18)은 number 아닌가요? ; 이것들은 왜 에러가 나지 않는거죠?