Класс MWSparse

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

Свойство NumRows As Long

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

Свойство NumColumns As Long

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

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

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

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

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

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

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

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

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

Субклон (ppSparse As MWSparse

)

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

Параметры

АргументНапечататьОписание

ppSparse

MWSparse

Ссылка на неинициализированный 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