방법: 구조체 선언(Visual Basic)
Structure Statement사용하여 구조체 선언을 시작하고 End Structure
문으로 종료합니다. 이 두 문 사이에 하나 이상의 요소를 선언해야. 요소는 모든 데이터 형식일 수 있지만 하나 이상의 요소는 공유되지 않는 변수 또는 공유되지 않는 비사용자 이벤트여야 합니다.
구조체 선언의 구조체 요소는 초기화할 수 없습니다. 변수를 구조체 형식으로 선언하는 경우 변수를 통해 해당 변수에 액세스하여 요소에 값을 할당합니다.
구조체와 클래스 간의 차이점에 대한 자세한 내용은 구조체 및 클래스참조하세요.
데모를 위해 직원의 이름, 전화 연장 및 급여를 추적하려는 상황을 고려합니다. 구조를 사용하면 단일 변수에서 이 작업을 수행할 수 있습니다.
구조를 선언하려면
구조체의 시작 및 끝 문을 만듭니다.
Public, Protected, Friend또는 Private 키워드를 사용하여 구조체의 액세스 수준을 지정하거나 기본값으로
Public
수 있습니다.Private Structure employee End Structure
구조체의 본문에 요소를 추가합니다.
구조체에는 하나 이상의 요소가 있어야 합니다. 모든 요소를 선언하고 해당 요소에 대한 액세스 수준을 지정해야 합니다. 키워드 없이 Dim 문 사용하는 경우 접근성은 기본적으로
Public
.Private Structure employee Public givenName As String Public familyName As String Public phoneExtension As Long Private salary As Decimal Public Sub giveRaise(raise As Double) salary *= raise End Sub Public Event salaryReviewTime() ' Method to raise the event Public Sub TriggerSalaryReview() RaiseEvent salaryReviewTime() End Sub End Structure
앞의 예제에서
salary
필드는Private
. 즉, 포함하는 클래스에서도 구조 외부에서 액세스할 수 없습니다. 그러나giveRaise
프로시저는Public
구조 외부에서 호출할 수 있는 것입니다. 마찬가지로, 구조 내의 메서드를 호출하여 간접적으로salaryReviewTime
이벤트를 발생시킬 수 있습니다. 예를 들어:Public Sub TriggerSalaryReview() RaiseEvent salaryReviewTime() End Sub
이렇게 하면 이벤트가 발생하는 방법과 시기를 제어하면서 구조 외부에서 직접 이벤트에 액세스할 수 없도록 할 수 있습니다.
변수,
Sub
프로시저 및 이벤트 외에도 구조체에서 상수,Function
프로시저 및 속성을 정의할 수도 있습니다. 하나 이상의 인수가 필요한 경우 최대 하나의 속성을 기본 속성지정할 수 있습니다. 공유Sub
프로시저를 사용하여 이벤트를 처리할 수 있습니다. 자세한 내용은 방법: Visual Basic기본 속성 선언 및 호출을 참조하세요.
참조
- 데이터 형식
- 기본 데이터 형식
- 복합 데이터 형식
- 값 형식 및 참조 형식
- 구조체
- 데이터 형식 문제 해결
- 구조 변수
- 구조 및 기타 프로그래밍 요소
- 구조체 및 클래스
- User-Defined 데이터 형식
.NET