mustBeInteger

Подтвердите то значение, целое число, или выдать ошибку

Синтаксис

Описание

пример

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

Эта функция принимает пользовательские объекты, если класс объекта реализует эти методы:

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

Примеры

свернуть все

Подтвердите это, вычисление приводит к целочисленным значениям.

A = randi(9)/randi(9);
mustBeInteger(A)
Error using mustBeInteger (line 14)
Values must be integer.

Если результат деления двух случайных целых чисел содержит дробную часть, mustBeInteger выдает ошибку.

Этот класс ограничивает значение свойства быть только целыми числами.

classdef MyClass
   properties
      Prop1 {mustBeInteger}
   end
end

Создайте объект и присвойте значение его свойству. Результат деления двух случайных целых чисел может привести к целому числу или номеру с дробной частью.

obj = MyClass;
obj.Prop1 = randi(9)/randi(9);
Error setting 'Prop1' property of 'MyClass' class:
Value must be integer.

Когда вы присваиваете значение свойству, MATLAB® вызывает mustBeInteger со значением, присваиваемым свойству. mustBeInteger выдает ошибку, когда значение, следующее из деления этих конкретных случайных целых чисел, не приводит к целому числу.

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

function r = mbInteger(A,idx)
    arguments
        A (1,:) {mustBeNumeric}
        idx (1,1) {mustBeInteger}
    end
    r = A(idx).^2;
end

Вызывание этой функции со значением нецелого числа приводит к ошибке, будучи выданным mustBeInteger. Результат деления двух случайных целых чисел может привести к целому числу или номеру с дробной частью.

idx = randi(9)/randi(9);
A = rand(1,10);
r = mbInteger(A,idx);
Error using mbInteger
Invalid input argument at position 2. Value must be integer.

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

свернуть все

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

Другие типы данных вызывают ошибку.

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

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

Введенный в R2017a