Main Content

mustBeGreaterThanOrEqual

値が別の値以上であることを検証

説明

mustBeGreaterThanOrEqual(value,c) は、value のいずれかの要素がスカラー c より小さい場合に、エラーをスローします。この関数は値を返しません。

mustBeGreaterThanOrEqual は以下の関数を呼び出して、valuec 以上であるかどうかを判別します。

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

この関数は最初の入力引数にある空の値を無視します。このため、プロパティ値または関数の引数値が空の場合、エラーはスローされません。

すべて折りたたむ

mustBeGreaterThanOrEqual を指定して、配列の値が 3 以上であることを検証します。

mustBeGreaterThanOrEqual([2,3,4],3)
Value must be greater than or equal to 3.

プロパティ値を指定値以上に制限します。

このクラスは、Prop1 の値が 3 以上になるよう制約します。

classdef MyClass
   properties
      Prop1 {mustBeGreaterThanOrEqual(Prop1,3)}
   end
end

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

obj = MyClass;
obj.Prop1 = 2;
Error setting property 'Prop1' of class 'MyClass'. Value must be greater than or equal to 3.

プロパティに値を割り当てると、MATLAB はプロパティに割り当てた値を使用して mustBeGreaterThanOrEqual を呼び出します。値 23 以上でないため、mustBeGreaterThanOrEqual はエラーを発行します。

この関数は、入力引数を 5 以上の値に制限します。

function r = mbGreaterThanOrEqual(x)
    arguments
        x {mustBeGreaterThanOrEqual(x,5)}
    end
    r = x - 5;
end

5 より小さい値を含むベクトルを指定して関数を呼び出すと、mustBeGreaterThanOrEqual で定義された要件が満たされず、エラーになります。

x = [12.7, 45.4, 4.9, 77.1, 53.1];
r = mbGreaterThanOrEqual(x);
Error using mbGreaterThanOrEqual
 r = mbGreaterThanOrEqual(x);
                          ↑
Invalid input argument at position 1. Value must be greater than or equal to 5.

入力引数

すべて折りたたむ

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

引数 value がこれ以上でなければならない定数値。次のいずれかのスカラーとして指定します。

  • 任意の数値クラス

  • 論理クラス

  • geisreal および isnumericislogical のいずれか一方を実装する MATLAB クラス

ヒント

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

拡張機能

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

バージョン履歴

R2017a で導入