Main Content

mustBeNonpositive

値が非正であることを検証

説明

mustBeNonpositive(value) は、value が正である場合にエラーをスローします。値が正となるのは、値が 0 より大きい場合です。この関数は値を返しません。

mustBeNonpositive は以下の関数を呼び出して、入力が正でないかどうかを判別します。

クラス サポート: すべての数値クラス、logical、および mustBeNonpositive によって呼び出される関数をオーバーロードする MATLAB® クラス。

すべて折りたたむ

mustBeNonpositive を使用して、入力に非正の値のみが含まれていることを検証します。

A = 1 < 10;
mustBeNonpositive(A)
Value must not be positive.

1 < 10 は logical 1 を返すため、A の値は正で、mustBeNonpositive はエラーを発行します。

このクラスは、Prop1 の値を非正の値に制限します。

classdef MyClass
   properties
      Prop1 {mustBeNonpositive}
   end
end

オブジェクトを作成して、プロパティに値を割り当てます。

obj = MyClass;
obj.Prop1 = 10;
Error setting property 'Prop1' of class 'MyClass':
Value must not be positive.

プロパティに値を割り当てると、MATLAB はプロパティに割り当てた値を使用して mustBeNonpositive を呼び出します。値 10 は正であるため、mustBeNonpositive はエラーを発行します。

この関数は、2 つの入力引数を宣言します。入力 lower は正であってはならず、入力 upper は正でなければなりません。

function r = mbNonpositive(lower,upper)
    arguments
        lower {mustBeNonpositive}
        upper {mustBePositive}
    end
    x = lower*pi:upper*pi;
    r = sin(x);
end

mustBeNonpositive の要件を満たさない lower の値を指定して関数を呼び出すと、エラーになります。

r = mbNonpositive(2,4);
Error using mbNonpositive
 r = mbNonpositive(2,4);
                   ↑
Invalid input argument at position 1. Value must not be positive.

入力引数

すべて折りたたむ

検証する値。スカラーまたは次のいずれかの配列として指定します。

例: value = -1 はエラーを生成しません。

ヒント

  • mustBeNonpositive は、プロパティと関数の引数の検証で使用されるように設計されています。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2017a で導入