Поделиться через


Составные типы данных

Обновлен: Ноябрь 2007

В дополнение к простейшим типам данных, имеющимся в Visual Basic, можно создавать из элементов различных типов составных типов данных, например структуры, массивы и классы. Можно создавать составные типы данных из простых типов или из других составных типов. Например можно определить массив элементов структуры или структуру с членами массива.

Типы данных

Составной тип отличается от типов данных, входящих в его состав. Например массив элементов Integer не принадлежит к типу данных Integer.

Тип данных массива обычно представляется с помощью типа элемента, скобок и запятых по мере необходимости. Например, одномерный массив элементов String обозначается String(), а двумерный массив элементов Boolean обозначается Boolean(,).

Типы структур

Не существует единственного типа данных, включающего в себя все структуры. Вместо этого каждое определение структуры представляется уникальным типом данных, даже если две структуры определяют идентичные элементы в том же порядке. Однако, если создается два или более экземпляров одной и той же структуры, Visual Basic рассматривает их как элементы одного типа данных.

Типы массивов

Не существует единого типа данных, включающего в себя все массивы. Тип данных отдельного экземпляра массива определяется следующими параметрами:

  • факт существования массива;

  • ранг (число измерений) массива;

  • тип элементов массива.

В частности, длина указанного измерения не является частью типа данных экземпляра. Это показано в приведенном ниже примере.

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) {}

В предыдущем примере массив переменных arrayA и arrayB считаются одним типом данных — Byte() — даже если они инициализируются для различной длины. Переменные arrayB и arrayC разных типов, так как типы их элементов различны. Переменные arrayC и arrayD разных типов, так как их ранги различны. Переменные arrayD и arrayE имеют одинаковый тип — Short(,) потому, что их ранги и типы элементов одинаковы, даже если arrayD еще не инициализирован.

Дополнительные сведения о массивах см. в разделе Массивы в Visual Basic.

Типы классов

Не существует единого типа данных, включающего в себя все классы. Хотя один класс может наследоваться от другого класса, каждый является отдельным типом данных. Несколько экземпляров одного класса имеют один тип данных. Если присвоить одну переменную экземпляра класса другой, они не только будут иметь одинаковый тип данных, но они также будут указывать на один и тот же экземпляр класса в памяти.

Дополнительные сведения о классах см. в разделе Общее представление о классах.

См. также

Задачи

Устранение неполадок, связанных с типами данных

Практическое руководство. Хранение нескольких значений в переменной

Основные понятия

Типы данных в Visual Basic

Универсальные типы в Visual Basic

Программирование без типов в Visual Basic

Типы данных являются типами .NET Framework

Другие ресурсы

Простые типы данных

Реализация типов данных

Преобразование типов в Visual Basic

Структуры: пользовательские типы данных