이 기사에서 언급 된 배열은 ASP 프로그래밍에 대한 특정 참조 값을 가진 Visual Basic의 배열 정의입니다.
배열은 순서 데이터 모음입니다. 배열의 요소는 동일한 데이터 유형에 속하지 않을 수 있습니다. 통합 배열 이름과 첨자를 사용하여 배열의 요소를 고유하게 결정하면 다른 요소에 영향을 미치지 않습니다. 배열의 위시는 제한되어 있으며 하한과 상한으로 나뉩니다. 어레이는 Dim, Private, Public 또는 STATIC로 선언 할 수 있으며 구문 형식은 동일합니다. 다음은 Dim을 사용하여 배열을 선언하는 방법 만 있습니다.
1. 배열의 정의 및 선언
배열의 정의 구문은 다음과 같습니다.
Dim Array Name ([[[[[[[[[[[[[[[[[[[[[)) 첨자]] 첨자]] 첨자 상한]
예를 들어 (현재 모듈의 배열의 기본 하한이 0)이라고 가정합니다.) :
a (10) 정수로 희미합니다
배열 이름은 A임을 의미합니다.이 배열 위시의 하한은 기본값 0이고 첨자의 상한은 10이고, (0), a (1)의 11 개의 정수 유형 요소가 있습니다. (10)까지.
dim b (1 ~ 20)는 정수로서
배열 이름은 B임을 의미합니다.이 배열의 하한은 1이고, 첨자의 상한은 20이고, b (1)에서 b (20)까지 20 개의 정수 유형의 요소가 있습니다.
DIM DAYARRAY (50)
DayArray는 51 개의 인덱스 (0 ~ 50) 요소가있는 변형 어레이임을 나타냅니다.
정수로서의 DIM 매트릭스 (3, 4)
행렬은 2 차원 정수 어레이임을 나타냅니다.
doubledim mymatrix (1 ~ 5, 4 ~ 9, 3 ~ 5)는 더블로
MyMatrix는 상부 및 하한을 명시 적으로 지정하는 3 차원 이중 어레이임을 나타냅니다.
did 날짜로 생일 (1 ~ 10)
생일은 1에서 10까지의 인덱스가있는 날짜 유형 배열임을 나타냅니다.
2. 옵션 기본 문
옵션 기반 문은 모듈 레벨에서 사용되며 배열 첨자의 기본 하한을 선언하는 데 사용됩니다.
옵션 기반 문의 구문은 다음과 같습니다.
옵션베이스 {0 |
참고 : 배열의 하한은 기본적으로 0이므로 옵션 기반 문을 사용할 필요가 없습니다. 이 명령문을 사용하여 배열 하한 1을 지정하는 경우 모듈의 배열 선언 전에 옵션 기반 문을 사용해야합니다.
알아채다:
(1) Dim, Private, Public, Redim 및 정적 진술의 조항은 배열의 첨자를 제어하는보다 유연한 방법을 제공합니다. 그러나 To 절을 사용하여 하한이 명시 적으로 지정되지 않은 경우 옵션베이스를 사용하여 기본 하한을 1로 설정할 수 있습니다. 배열 함수를 사용하여 생성 된 배열의 하한은 또한 배열 유형 라이브러리 (예 : VBA.array) 이름에 의해 자격이없는 한 옵션 기본 문으로 지정된 하한에 의해 결정됩니다. 배열 기능을 사용하여 생성 된 배열은 배열 기능의 이름으로 결정됩니다.
(2) 옵션 기반 문은 명령문을 포함하는 모듈에 위치한 배열의 하한에만 영향을 미칩니다.
배열 선언에 대한 몇 가지 메모 :
wame 배열 이름 이름 이름 지정 규칙은 변수 이름과 동일합니다.
② 배열 이름은 괄호로 랩핑되며 C 언어와는 다른 정사각형 괄호를 사용할 수 없습니다.
첨자 첨자 하한이 상한보다 크지 않아야합니다.
subscripts 첨자 경계로 가변 이름 또는 상수 이름 (및 실수)을 사용할 수 있습니다. 인덱스의 경계가 상수 이름 인 경우, 인덱스의 경계가 변수 이름 인 경우 배열의 크기는 동적으로 정의 될 수 있습니다. 프로그램 작동 중 변수의 값. 따라서 VB의 배열은 정적 배열과 동적 배열의 두 가지 유형으로 나눌 수 있습니다.
3. 정적 배열
정적 배열은 배열 요소의 수가 고정되고 변경되지 않음을 의미합니다. 즉, 그들이 차지하는 메모리 공간의 크기는 고정되어 변경되지 않습니다. 고정 크기 배열의 다른 치수에 따라 1 차원 배열 및 다차원 배열로 나눌 수 있습니다.
다차원 배열 선언을위한 구문 형식은 다음과 같습니다.
Dim Array Name ([[Subscript Boundary List]]) [데이터 유형으로]
첨자 경계의 정의 형식 : [첨자 하부 경계] 첨자 상한
첨자 경계 목록은 쉼표로 분리 된 배열의 각 차원의 첨자 경계를 나타냅니다.
[첨자 하한] 첨자 상한, [하위 스크립트 하한] 첨자 상한, ..., [첨자 하한] 첨자 상한
(1 차원) (2 차원) (nth 차원)
n = 1 인 경우, 배열은 1 차원 배열이라고합니다.
다음 예제는 1 차원 배열의 사용을 소개하는 데 사용됩니다.
'길이 51 FriendsName의 문자열 배열을 선언합니다
Dim FriendsName (50)은 문자열로
'길이의 글로벌 정수 배열을 선언합니다 11
정수로서 공개 클래스 (10)
1 차원 어레이의 요소 수는 (상한선 경계+1)입니다.
초기 값을 배열에 할당하려면 다음과 같은 루프 문을 사용할 수 있습니다.
Dim I는 정수로 Dim
i = 0 ~ 11 ''프로그램 흐름 통제 루프 문의 제어
C (i) = i
다음 i
첨자 하한이 명시 적으로 지정되지 않은 경우 배열의 첨자 하한은 옵션 기반 문에 의해 제어됩니다. 옵션 기반 문이 없으면 하한은 기본값이 0입니다.
배열의 치수는 2로 제한되지 않습니다. VB에서는 60으로 확장 될 수 있습니다. 실제 응용 분야에서는 3 차원 이상의 어레이에 대한 응용 프로그램이 많지 않습니다. 다차원 배열을 정의 할 때는 다차원 배열을 사용하는 모든 첨자 경계를 지정하기 위해 DIM 문 만 있으면 의미있는 통계 데이터가 쉽게 나타낼 수 있습니다. 예를 들어:
통화로서의 희미한 이익 (16,10,12)
이 이익 배열은 매장 이름, 부서 및 월을 매개 변수로하는 백화점의 이익을 나타낼 수 있습니다. 예를 들어, 이익 (2,8,11)은 11 월 두 번째 지점의 8 번째 부서의 이익을 나타냅니다.
4. 동적 배열
때로는 배열이 사용되기 전에 실제 요구를 충족시키기 위해 배열이 얼마나 큰지 아는 것은 불가능합니다. 물론, 배열의 크기는 실질적인 응용 프로그램 요구를 충족 할 수있을 정도로 크게 정의 될 수 있습니다. 동적 배열을 사용하는 경우 프로그램이 실행될 때 실제 요구에 따라 배열의 크기를 정확하게 정의 할 수 있습니다.
배열을 선언 할 때는 치수 목록을 제공하지 않으면 배열을 동적 배열로 선언하는 것입니다. 예를 들어:
정수로 Dim MyArry ()
동적 배열을 사용하기 전에 redim 문을 사용하여 재정의해야합니다. 배열 MyArry가 이전에 선언 한 것처럼 다음 문장을 사용하여 동적 2 차원 배열로 정의 할 수 있습니다.
Redim Myarry (10,10)
Redim 문을 반복적으로 실행하여 동적 배열을 여러 번 정의 할 수도 있습니다. redim을 사용하여 정의 할 수있는 배열의 최대 치수는 60입니다. redim 문은 배열의 치수 당 요소 수를 변경할 수 있지만 치수 수를 변경할 수는 없습니다. 다음은 REDIM 문의 표준 적용의 예입니다.
Dim MyArry ()는 단일 '로 동적 배열을 선언합니다
redim myarry (30,20,10) '배열을 재정의합니다
redim myarry (50,23,21) '배열을 다시 재정의하십시오
Redim의 구문은 Dim과 동일하며 키워드 보존을 선택할 수도 있습니다.
redim preserve array name ([[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[))))] 첨자] 첨자 상한]
예를 들어:
?
- Redimmyarry (50,23,21)
- redimpreservemyarry (50,23,50)