다이나믹 로브 스크립트 다중 차원 배열
-
21-08-2019 - |
문제
나는 단지 yicky 코드를하고 있었고 3 개의 동적 배열을 사용하는 대신 다음과 같이 생각했습니다.
dim x ()는 문자열로, y (), string, z (), String으로 z ()
3 차원 동적 배열을 갖는 것이 좋습니다. 하지만; 도움과 내 실험은 그것들을 정의하는 방법을 밝히지 않았다.
이것은 작동하지 않습니다.
dim x () () 또는 dim (, 2) 또는 dim (,)
누군가 아이디어가 있습니까?
해결책
다이나믹 배열은 치수 수에 관계없이 동일한 방식으로 선언됩니다 (LotusScript의 배열은 최대 8 치수를 가질 수 있음). 당신의 예에 따르면, 나는 그것이 당신이 원하는 2 차원 배열이라고 생각합니다. 첫 번째 차원은 3 개의 항목으로 제한됩니다.
배열을 처음으로 선언하는 경우 :
Dim x() As String
그런 다음 다음 예제에 따라 한계를 지정할 수 있습니다.
Redim x( 0 To 2, 0 To 9 ) ' A two dimensional array
그리고 나중에 배열을 확대하고 모든 값을 유지 해야하는 경우 다음과 같이 할 수 있습니다.
Redim Preserve x( 0 To 2, 0 To 99 )
배열의 치수 수가 설정되면 마지막 차원의 한계 만 변경할 수 있습니다.
다른 팁
배열 대신 목록을 사용할 수 있습니다.
Dim x list as String
그것은 완전히 동적이며 문자열을 색인으로 취합니다. 목록은 목록을 포함 할 수 없지만 목록에는 객체가 포함될 수 있으므로 할 수 있습니다.
Public Class ListContainer
Public level2 List as String
End Class
이렇게하면 보존 할 필요가 없습니다. 목록을 통해 구축 할 수있는 모든 루프
제휴하지 않습니다 StackOverflow