Main Content

mustBeLessThanOrEqual

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

説明

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

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

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

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

すべて折りたたむ

mustBeLessThanOrEqual を使用して、1 番目の入力の値が 2 番目の入力の値以下であることを検証します。

mustBeLessThanOrEqual([3 4 5],2)
Values must be less than or equal to 2.

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

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

classdef MyClass
   properties
      Prop1 {mustBeLessThanOrEqual(Prop1,2)}
   end
end

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

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

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

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

function r = mbLessThanOrEqual(x)
    arguments
        x {mustBeLessThanOrEqual(x,5)}
    end
    r = x + 5;
end

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

x = [1.27, 4.54, 3.9, 5.1, .531];
r = mbLessThanOrEqual(x);
Error using mbLessThanOrEqual
 r = mbLessThanOrEqual(x);
                       ↑
Invalid input argument at position 1. Value must be less than or equal to 5.

入力引数

すべて折りたたむ

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

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

ヒント

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

拡張機能

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

バージョン履歴

R2017a で導入