다음을 통해 공유


Visual Basic의 배열 크기

업데이트: 2007년 11월

배열의 크기는 배열의 모든 차원 길이를 곱한 값입니다. 이 값은 배열에 현재 포함된 요소의 전체 개수를 나타냅니다.

다음 예제에서는 3차원 배열을 선언합니다.

Dim prices(3, 4, 5) As Long

prices 변수의 배열 크기는 (3 + 1) x (4 + 1) x (5 + 1) = 120입니다.

배열 크기 고려 사항

배열 크기를 결정할 때는 다음 사항을 고려해야 합니다.

차원 길이

각 차원의 인덱스는 0부터 시작합니다. 즉, 인덱스의 범위는 0부터 인덱스 상한까지입니다. 따라서 특정 차원의 길이는 해당 차원에 선언된 상한보다 1이 더 큰 값입니다.

길이 제한

배열의 모든 차원 길이는 Integer 데이터 형식의 최대값인 (2 ^ 31) - 1로 제한됩니다. 그러나 배열의 전체 크기는 시스템에서 사용할 수 있는 메모리에 따라서도 제한을 받습니다. 사용할 수 있는 RAM 용량을 초과하는 배열을 초기화하려고 하면 공용 언어 런타임에서는 OutOfMemoryException 예외를 throw합니다.

크기 및 요소 크기

배열의 크기는 해당 요소의 데이터 형식과 상관이 없습니다. 배열 크기는 항상 배열이 저장소에서 차지하는 바이트 수가 아니라 요소의 전체 개수를 나타냅니다.

메모리 사용

배열이 메모리에 저장되는 방식에 관해서는 어떤 가정도 하지 않는 것이 안전합니다. 저장소는 플랫폼의 데이터 너비에 따라 달라지므로 동일한 배열이라도 32비트 시스템에서보다 64비트 시스템에서 더 많은 메모리를 사용합니다. CLR(공용 언어 런타임)에서는 배열을 초기화할 때의 시스템 구성에 따라 저장소를 할당하여 가능한 한 조밀하게 요소를 압축하거나 원래의 하드웨어 경계에 모든 요소를 맞춥니다. 또한 배열을 사용하려면 해당 제어 정보에 대한 저장소 오버헤드가 필요하며 이 오버헤드는 차원이 늘어날수록 증가합니다.

참고 항목

작업

방법: 배열 변수 선언

방법: 배열 만들기

방법: 배열 변수 초기화

방법: 배열 크기 확인

방법: 배열 크기 변경

방법: 배열의 1차원 길이 확인

배열 문제 해결

기타 리소스

Visual Basic의 배열