mustBeNonsparse

Проверьте, что значение не проанализировано

Синтаксис

Описание

пример

mustBeNonsparse(value) выдает ошибку, если value является разреженным. Эта функция не возвращает значение.

mustBeNonsparse вызывает следующую функцию, чтобы определить, не разрежен ли вход

Поддержка классов: Все числовые классы, logical, и MATLAB® классы, которые перегружают issparse.

Примеры

свернуть все

Использование mustBeNonsparse чтобы подтвердить, что вход не анализируется.

Используйте sparse функция для создания разреженной матрицы.

A = [ 0   0   0   5
      0   2   0   0
      1   3   0   0
      0   0   4   0];
S = sparse(A);

Проверьте это S не анализируется.

mustBeNonsparse(S)
Error using mustBeNonsparse (line 13)
Values must not be sparse.

Этот класс ограничивает значение Prop1 чтобы не анализировать значения.

classdef MyClass
   properties
      Prop1 {mustBeNonsparse}
   end
end

Создайте объект и присвойте значение его свойству.

obj = MyClass;
A = [ 0   0   0   5
      0   2   0   0
      1   3   0   0
      0   0   4   0];
obj.Prop1 = sparse(A);
Error setting 'Prop1' property of 'MyClass' class:
Values must not be sparse.

Когда вы присваиваете значение свойству, MATLAB вызывает mustBeNonsparse со значением, назначенным свойству. mustBeNonsparse выдает ошибку, поскольку значение, назначенное Prop1 является разреженным.

Эта функция ограничивает входной параметр как любое значение без анализа.

function mbNonsparse(S)
    arguments
        S {mustBeNonsparse}
    end
    disp(S)
end

Вызов этой функции с разреженным массивом приводит к ошибке, выдаваемой mustBeNonsparse.

A = [ 0   0   0   5
      0   2   0   0
      1   3   0   0
      0   0   4   0];
S = sparse(A);
mbNonsparse(S)
Error using mbNonsparse
Invalid input argument at position 1. Value must not be sparse.

Входные параметры

свернуть все

Значение для проверки, заданное как скаляр или массив любого из следующих:

  • logical или числового класса

  • Классы MATLAB, которые реализуют issparse

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
Поддержка комплексного числа: Да

Совет

  • mustBeNonsparse предназначен для использования в валидацию аргументов свойства и функции.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2017a