Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Вы начинаете объявление структуры с оператора 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, что означает, что он недоступен вне структуры, даже из содержащего класса. Однако процедураgiveRaisePublic, поэтому ее можно вызывать извне структуры. Аналогичным образом можно вызвать событиеsalaryReviewTimeкосвенно путем вызова метода в структуре, которая вызывает его. Например:Public Sub TriggerSalaryReview() RaiseEvent salaryReviewTime() End SubЭто позволяет управлять тем, как и когда событие вызывается, сохраняя событие недоступно непосредственно извне структуры.
Помимо переменных,
Subпроцедур и событий можно также определять константы,Functionпроцедуры и свойства в структуре. Можно назначить по крайней мере одно свойство в качестве свойства по умолчанию, если он принимает по крайней мере один аргумент. Событие можно обрабатывать с помощью общей процедурыSub. Дополнительные сведения см. в разделе Практическое руководство. Объявление и вызов свойства по умолчанию в Visual Basic.