Класс MWSparse

Класс MWSparse передает или получает двумерный разреженный числовой массив в или из метода скомпилированного класса. Этот класс имеет семь свойств/методов:

Свойство NumRows как долго

Хранит размерность строки для массива. Значение NumRows должно быть неотрицательным. Если значение является нулем, индекс строки взят из максимума значений в массиве RowIndex.

Свойство NumColumns как долго

Хранит размерность столбца для массива. Значение NumColumns должно быть неотрицательным. Если значение является нулем, индекс строки взят из максимума значений в массиве ColumnIndex.

Свойство RowIndex как вариант

Хранит массив индексов строки ненулевых элементов массива. Значение этого свойства может быть любым типом, принудительным к Variant, а также типам объектов, с ограничением, что основной массив должен разрешить или быть принудительным к числовой матрице типа Long. Если значение NumRows является ненулевым, и любой индекс строки больше, чем NumRows, ошибка плохого индекса происходит. Ошибка также заканчивается, если число элементов в массиве RowIndex не совпадает с числом элементов в основном массиве свойства Array.

Свойство ColumnIndex как вариант

Хранит массив индексов столбца ненулевых элементов массива. Значение этого свойства может быть любым типом, принудительным к Variant, а также типам объектов, с ограничением, что основной массив должен разрешить или быть принудительным к числовой матрице типа Long. Если значение NumColumns является ненулевым, и любой индекс столбца больше, чем NumColumns, ошибка плохого индекса происходит. Ошибка также заканчивается, если число элементов в массиве ColumnIndex не совпадает с числом элементов в основном массиве свойства Array.

Массив свойства как вариант

Хранит ненулевые значения массивов разреженного массива. Значение этого свойства может быть любым типом, принудительным к Variant, а также типам объектов, с ограничением, что основной массив должен разрешить или быть принудительным к числовой матрице типа Double или Boolean.

Свойство MWFlags как MWFlags

Хранит ссылку на объект MWFlags. Это наборы свойств или получает форматирование массивов и флаги преобразования данных для конкретного разреженного массива. Каждый объект MWSparse имеет свое собственное свойство MWFlags. Это свойство заменяет значение любого набора флагов на объекте, методы которого называются.

Клон Sub (ppSparse как MWSparse)

Создает копию объекта MWSparse.

Параметры

АргументВводОписание

ppSparse

MWSparse

Ссылка на неинициализированный объект MWSparse получить копию

Возвращаемое значение

'none'.

Комментарии

Clone выделяет новый объект MWSparse и создает глубокую копию содержимого объекта. Вызовите эту функцию, когда отдельный объект будет требоваться вместо разделяемой копии существующей ссылки на объект.

Пример

Следующая Визуальная выборка 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