Оператор Erase
Повторно инициализирует элементы массивов фиксированного размера и освобождает место для хранения динамического массива.
Синтаксис
Очисткасписка массивов
Обязательный аргументarraylist — это одна или несколько переменных массива с разделителями-запятыми для удаления.
Замечания
Оператор удаления Erase ведет себя по-разному в зависимости от того, какой массив используется: с фиксированным размером (обычный) или динамический. Erase не освобождает память для массивов фиксированного размера. Erase задает элементы фиксированного массива следующим образом.
Тип массива | Влияние очистки на элементы фиксированного массива |
---|---|
Фиксированный числовой массив | Задает нулевое значение для каждого элемента. |
Фиксированный массив строк (переменной длины) | Задает строку нулевой длины ("") для каждого элемента. |
Фиксированный массив строк (фиксированной длины) | Задает нулевое значение для каждого элемента. |
Фиксированный вариантный массив | Задает пустое значение для каждого элемента. |
Массив типов, определяемых пользователем | Задает для каждого элемента значение как для отдельной переменной. |
Массив объектов | Задает особое значение Nothing (Ничего) для каждого элемента. |
Erase освобождает память, используемую динамическими массивами. Прежде чем программа снова сможет ссылаться на динамический массив, она должна повторно объявить размеры переменной массива с помощью инструкции ReDim .
Пример
В этом примере оператор Erase используется для повторной инициализации элементов массивов фиксированного размера и отмены выделения места для хранения динамического массива.
' Declare array variables.
Dim NumArray(10) As Integer ' Integer array.
Dim StrVarArray(10) As String ' Variable-string array.
Dim StrFixArray(10) As String * 10 ' Fixed-string array.
Dim VarArray(10) As Variant ' Variant array.
Dim DynamicArray() As Integer ' Dynamic array.
ReDim DynamicArray(10) ' Allocate storage space.
Erase NumArray ' Each element set to 0.
Erase StrVarArray ' Each element set to zero-length
' string ("").
Erase StrFixArray ' Each element set to 0.
Erase VarArray ' Each element set to Empty.
Erase DynamicArray ' Free memory used by array.
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.