MATLAB® позволяет вам сохранить on-off
состояния предупреждения, изменение состояний предупреждения и восстановление исходных состояний предупреждения. Это полезно, если вам нужно временно выключить некоторые предупреждения и позже восстановить исходные настройки.
Следующий оператор сохраняет текущее состояние всех предупреждений в массиве структур под названием orig_state
:
orig_state = warning;
Чтобы восстановить исходное состояние после любых предупреждающих изменений, используйте следующий синтаксис:
warning(orig_state);
Можно также сохранить текущее состояние и переключить предупреждения в одну команду. Для примера, оператор, orig_state = warning('off','all');
эквивалентно командам:
orig_state = warning; warning('off','all')
В этом примере показано, как восстановить состояние определенного предупреждения.
Запросите Control:parameterNotSymmetric
предупреждение:
warning('query','Control:parameterNotSymmetric')
The state of warning 'Control:parameterNotSymmetric' is 'on'.
Выключите Control:parameterNotSymmetric
предупреждение:
orig_state = warning('off','Control:parameterNotSymmetric')
orig_state = identifier: 'Control:parameterNotSymmetric' state: 'on'
orig_state
содержит предупреждение, состояние перед поворотом MATLAB Control:parameterNotSymmetric
выкл.
Запросите все состояния предупреждения:
warning
The default warning state is 'on'. Warnings not set to the default are State Warning Identifier off Control:parameterNotSymmetric
MATLAB указывает, что Control:parameterNotSymmetric
является 'off'
.
Восстановите исходное состояние:
warning(orig_state) warning('query','Control:parameterNotSymmetric')
The state of warning 'Control:parameterNotSymmetric' is 'on'.
В этом примере показано, как сохранить и восстановить несколько предупреждающих состояний.
Отключите три предупреждения и запросите все предупреждения:
w(1) = warning('off','MATLAB:rmpath:DirNotFound'); w(2) = warning('off','MATLAB:singularMatrix'); w(3) = warning('off','Control:parameterNotSymmetric'); warning
The default warning state is 'on'. Warnings not set to the default are State Warning Identifier off Control:parameterNotSymmetric off MATLAB:rmpath:DirNotFound off MATLAB:singularMatrix
Восстановите три предупреждения в исходном состоянии и запросите все предупреждения:
warning(w) warning
All warnings have the state 'on'.
Вам не нужно хранить информацию о предыдущих состояниях предупреждения в массиве, но это позволяет восстанавливать предупреждения с помощью одной команды.
Примечание
При временном отключении нескольких предупреждений используйте методы, связанные с onCleanup
может быть выгодным.
Кроме того, можно сохранить и восстановить все предупреждения.
Включите все предупреждения и сохраните исходное состояние предупреждения:
orig_state = warning('on','all');
Восстановите предупреждения в предыдущем состоянии:
warning(orig_state)