The MWSparse
класс передает или получает двумерный разреженный числовой массив в скомпилированный метод класса или из него. Этот класс имеет семь свойств/методов:
Сохраняет размерность строки для массива. Значение NumRows
должно быть неотрицательным. Если значение меньше нуля, индекс строки берётся из максимального значения в RowIndex
массив.
Сохраняет размерность столбца для массива. Значение NumColumns
должно быть неотрицательным. Если значение меньше нуля, индекс строки берётся из максимального значения в ColumnIndex
массив.
Сохраняет массив индексов строк ненулевых элементов массива. Значение этого свойства может быть любым типом, принудительным к Variant
, а также типы объектов с ограничением, что базовый массив должен разрешиться к числовой матрице типа или быть принудительным к ней Long
. Если значение NumRows
ненулевое, и любой индекс строки больше NumRows
, возникает ошибка с неправильным индексом. Ошибка также возникает, если количество элементов в RowIndex
массив не совпадает с количеством элементов в Array
базовый массив свойства.
Сохраняет массив индексов столбцов ненулевых элементов массива. Значение этого свойства может быть любым типом, принудительным к Variant
, а также типы объектов с ограничением, что базовый массив должен разрешиться к числовой матрице типа или быть принудительным к ней Long
. Если значение NumColumns
является ненулевым, и любой индекс столбца больше NumColumns
, возникает ошибка с неправильным индексом. Ошибка также возникает, если количество элементов в ColumnIndex
массив не совпадает с количеством элементов в Array
базовый массив свойства.
Сохраняет ненулевые значения массивов разреженного массива. Значение этого свойства может быть любым типом, принудительным к Variant
, а также типы объектов с ограничением, что базовый массив должен разрешиться к числовой матрице типа или быть принудительным к ней Double
или Boolean
.
Сохраняет ссылку на MWFlags
объект. Это свойство устанавливает или получает флаги форматирования и преобразования данных для определенного разреженного массива. Каждый MWSparse
объект имеет свою собственную MWFlags
свойство. Это свойство переопределяет значение любых флагов, установленных на объекте, методы которого вызываются.
Создание копии MWSparse
объект.
Аргумент | Напечатать | Описание |
---|---|---|
|
|
Ссылка на неинициализированный |
Ничего.
Clone
выделяет новую MWSparse
и создает глубокую копию содержимого объекта. Вызовите эту функцию, когда требуется отдельный объект вместо общей копии существующей ссылки на объект.
Следующий Visual Basic® выборка создает тридиагональный разреженный массив 5 на 5 со следующими записями:
X = [ 2 -1 0 0 0 -1 2 -1 0 0 0 -1 2 -1 0 0 0 -1 2 -1 0 0 0 -1 2 ] Sub foo() Dim x As MWSparse Dim rows(1 To 13) As Long Dim cols(1 To 13) As Long Dim vals(1 To 13) As Double Dim I As Long, K As Long On Error GoTo Handle_Error K = 1 For I = 1 To 4 rows(K) = I cols(K) = I + 1 vals(K) = -1 K = K + 1 rows(K) = I cols(K) = I vals(K) = 2 K = K + 1 rows(K) = I + 1 cols(K) = I vals(K) = -1 K = K + 1 Next rows(K) = 5 cols(K) = 5 vals(K) = 2 Set x = New MWSparse x.NumRows = 5 x.NumColumns = 5 x.RowIndex = rows x.ColumnIndex = cols x.Array = vals . . . Exit Sub Handle_Error: MsgBox (Err.Description) End Sub