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