VB.NET Dim vs. New
-
19-08-2019 - |
Вопрос
Каковы различия между следующими конструкциями? Почему предпочитаешь одно другому?
Номер один:
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.