MATLAB задает функции для использования в валидации аргумента. Эти функции поддерживают шаблоны общего использования для валидации и предоставляют описательные сообщения об ошибке. Следующие таблицы категоризируют MATLAB® функции валидации и описывают свое использование.
Имя | Значение | Функции, обращенные входные параметры |
---|---|---|
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
Имя | Значение | Функции, обращенные входные параметры |
---|---|---|
|
| |
|
| |
|
| |
|
|
Имя | Значение | Функции, обращенные входные параметры |
---|---|---|
|
| Отношения определения класса использования |
|
| |
|
| |
|
| |
|
|
Имя | Значение | Функции, обращенные входные параметры |
---|---|---|
|
| |
| value должен быть скаляр или быть пустым. | |
| value должен быть вектор. |
Имя | Значение | Функции, обращенные входные параметры |
---|---|---|
|
| |
| value должен быть в области значений. |
Имя | Значение | Функции, обращенные входные параметры |
---|---|---|
|
| |
| path должен относиться к папке. | |
|
| Не применяется |
|
| Не применяется |
|
| Не применяется |
| varname должно быть допустимое имя переменной. |
Функциями валидации являются функции MATLAB, которые проверяют требования к значениям, вводящим функции или свойства. Функции валидации определяют, когда выдать ошибки и что сообщения об ошибке отобразиться.
Функции, используемые для валидации, имеют эти элементы дизайна:
Функции валидации не возвращают выходные параметры или изменяют состояние программы. Единственная цель состоит в том, чтобы проверять валидность входного значения.
Функции валидации должны принять значение, подтверждаемое как входной параметр. Если функция принимает больше чем один входной параметр, первый вход является значением, которое будет подтверждено.
Функции валидации полагаются только на входные параметры. Никакие другие значения не доступны для функции.
Функции валидации выдают ошибку, если валидация перестала работать. Используя throwAsCaller
выдавать исключения старается не показывать саму функцию валидации в отображенном сообщении об ошибке.
Создание вашей собственной функции валидации полезно, когда это необходимо, чтобы обеспечить определенную валидацию, которая не является доступным использованием функций валидации MATLAB. Можно создать функцию валидации как локальную функцию в файле функции или поместить его в путь MATLAB. Чтобы избежать слияния сообщений об ошибке, не используйте валидацию аргумента функции в пользовательских функциях валидации.
Например, mustBeRealUpperTriangular
функция ограничивает вход верхними треугольными матрицами с действительным знаком. Функция валидации использует istriu
и isreal
функции.
function mustBeRealUpperTriangular(a) if ~(istriu(a) && isreal(a)) eidType = 'mustBeRealUpperTriangular:notRealUpperTriangular'; msgType = 'Input must be a real-valued, upper triangular matrix.'; throwAsCaller(MException(eidType,msgType)) end end
Если входной параметр не имеет правильного типа, функция выдает ошибку.
a = [1 2 3+2i; 0 2 3; 0 0 1]; mustBeRealUpperTriangular(a)
Input must be a real-valued, upper triangular matrix.