Практическое руководство. Присвоение одного массива другому (Visual Basic)
Так как массивы являются объектами, их можно использовать в инструкциях назначения, таких как другие типы объектов. Переменная массива содержит указатель на данные, составляющие элементы массива и сведения о рангах и длине, а назначение копирует только этот указатель.
Назначение одного массива другому массиву
Убедитесь, что два массива имеют одинаковый ранг (число измерений) и совместимые типы данных элементов.
Используйте стандартную инструкцию назначения для назначения исходного массива целевому массиву. Не следует использовать ни одно имя массива с скобками.
Dim formArray() As System.Windows.Forms.Form Dim controlArray() As System.Windows.Forms.Control controlArray = formArray
При назначении одного массива другому применяются следующие правила:
Равные ранги. Ранг (число измерений) целевого массива должен совпадать с рангом исходного массива.
Если ряды двух массивов равны, измерения не должны быть равными. Количество элементов в заданном измерении может изменяться во время назначения.
Типы элементов. Оба массива должны иметь элементы ссылочного типа, либо оба массива должны иметь элементы типа значения. Для получения дополнительной информации см. Value Types and Reference Types.
Если оба массива имеют элементы типа значений, типы данных элемента должны быть одинаковыми. Единственное исключение заключается в том, что можно назначить массив
Enum
элементов массиву базового типа этогоEnum
.Если оба массива имеют элементы ссылочного типа, тип исходного элемента должен быть производным от типа целевого элемента. В этом случае два массива имеют ту же связь наследования, что и их элементы. Это называется ковариантностью массива.
Компилятор сообщает об ошибке, если указанные выше правила нарушаются, например, если типы данных несовместимы или ряды не равны. Вы можете добавить обработку ошибок в код, чтобы убедиться, что массивы совместимы перед попыткой назначения. Вы также можете использовать оператор TryCast ключевое слово, если вы хотите избежать возникновения исключения.