다음을 통해 공유


복합 데이터 형식(Visual Basic)

기본 데이터 형식 Visual Basic 공급 외에도 다양한 형식의 항목을 어셈블하여 구조체, 배열 및 클래스와 같은 복합 데이터 형식 을 만들 수도 있습니다. 기본 형식 및 다른 복합 형식에서 복합 데이터 형식을 작성할 수 있습니다. 예를 들어 구조 요소의 배열 또는 배열 멤버가 있는 구조를 정의할 수 있습니다.

데이터 형식

복합 형식은 해당 구성 요소의 데이터 형식과 다릅니다. 예를 들어 요소 배열 Integer 은 데이터 형식이 Integer 아닙니다.

배열 데이터 형식은 일반적으로 필요에 따라 요소 형식, 괄호 및 쉼표로 표현됩니다. 예를 들어, 요소의 String 1차원 배열은 String()로 표시되고, 요소의 Boolean 2차원 배열은 Boolean(,)로 표시됩니다.

구조체 형식

모든 구조를 구성하는 단일 데이터 형식은 없습니다. 대신, 두 구조체가 동일한 요소를 동일한 순서로 정의하더라도 구조체의 각 정의는 고유한 데이터 형식을 나타냅니다. 그러나 동일한 구조의 인스턴스를 두 개 이상 만드는 경우 Visual Basic은 동일한 데이터 형식으로 간주합니다.

튜플

튜플은 형식이 미리 정의된 둘 이상의 필드를 포함하는 경량 구조체입니다. 튜플은 Visual Basic 2017부터 지원됩니다. 튜플은 더 무거운 클래스 또는 구조체에서 반환된 필드를 참조하거나 패키징하여 인수를 전달하지 않고도 단일 메서드 호출에서 여러 값을 반환하는 데 가장 일반적으로 사용됩니다. 튜플에 대한 자세한 내용은 튜플 항목을 참조하세요.

배열 형식

모든 배열을 구성하는 단일 데이터 형식은 없습니다. 배열의 특정 인스턴스의 데이터 형식은 다음에 의해 결정됩니다.

  • 배열이라는 사실

  • 배열의 순위(차원 수)

  • 배열의 요소 형식

특히 지정된 차원의 길이는 인스턴스의 데이터 형식에 속하지 않습니다. 다음 예제에서는 이를 보여 줍니다.

Dim arrayA( ) As Byte = New Byte(12) {}  
Dim arrayB( ) As Byte = New Byte(100) {}  
Dim arrayC( ) As Short = New Short(100) {}  
Dim arrayD( , ) As Short  
Dim arrayE( , ) As Short = New Short(4, 10) {}  

앞의 예제에서 배열 변수 arrayAarrayB 는 서로 다른 길이로 초기화되더라도 동일한 데이터 형식 Byte() 으로 간주됩니다. 변수는 arrayBarrayC 요소 형식이 다르기 때문에 형식이 동일하지 않습니다. 변수는 arrayCarrayD 순위가 다르기 때문에 형식이 동일하지 않습니다. arrayDarrayEShort(,)가 아직 초기화되지 않았더라도 순위와 요소 유형이 동일하기 때문에 arrayD라는 같은 유형입니다.

배열에 대한 자세한 내용은 배열을 참조 하세요.

클래스 형식

모든 클래스를 구성하는 단일 데이터 형식은 없습니다. 한 클래스는 다른 클래스에서 상속할 수 있지만 각각은 별도의 데이터 형식입니다. 동일한 클래스의 여러 인스턴스는 동일한 데이터 형식입니다. 한 클래스 인스턴스 변수를 다른 클래스 인스턴스 변수에 할당하는 경우 동일한 데이터 형식을 가질 뿐만 아니라 메모리의 동일한 클래스 인스턴스를 가리킵니다.

클래스에 대한 자세한 내용은 개체 및 클래스를 참조하세요.

참고하십시오