Вопрос

Каковы различия между следующими конструкциями? Почему предпочитаешь одно другому?

Номер один:

Dim byteArray(20) as Byte

Номер два:

Dim byteArray() as Byte = new Byte(20) {}

Любая помощь будет оценена.

Спасибо.

Изменить . Я исправил код. Quot & & ReDim Quot; должно быть " Dim ".

Это было полезно?

Решение

Они оба выделяют 20 байтов в управляемой куче.

Они оба устанавливают идентификатор 'byteArray', чтобы он указывал на эти байты.

Оператор с " new " оператор (предложение) позволяет инициализировать элементы массива.


Dim byteArray() as Byte = new Byte(20) { 1, 2, 3, 4, 5, 6, ... }

Кстати, чтобы выделить массив без элементов, укажите размер -1 для одного из измерений. Это полезно, если вам нужно получить доступ к таким свойствам, как length, не выдавая ошибку.

Другие советы

Это то же самое.

Всегда более чем 1 способ снятия шкуры с кошки.

Да, то же самое. Второе утверждение следует избегать, мало кто догадывается, что оно действительно создает массив из 21 элемента. Не то чтобы это было так очевидно из 1-го утверждения ...

Оба одинаковы.

Dim byteArray(20) as Byte создаст массив из 21 элемента

Dim byteArray() as Byte = new Byte(20) {} создаст массив из 20 элементов

Там нет разницы. Redim - это синтаксис переноса, с которым знакомы разработчики vb 6.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top