Что такое Nargin вне функции?
Я просто писал функцию Matlab и хотел скопировать и вставить то, что у меня было, в интерактивный сеанс. Некоторые из них были nargin
заявления (например, if nargin < 1; a = 0; end;
) и получается, что nargin
имел значение 11005 в моей рабочей области, без моего назначения. Кто-нибудь знает, что это такое, используется ли оно для чего-либо (вне функций) и есть ли какие-либо проблемы с его установкой на ноль?
1 ответ
Когда используется внутри функции, nargin
дает количество параметров, переданных этой функции. Используется со строковым аргументом fn
это встроенная функция, которая возвращает количество параметров, принятых функцией fn
, Вы не должны вызывать его без параметра из рабочей области:
nargin возвращает количество входных аргументов, переданных в вызове текущей выполняемой функции. Используйте этот синтаксис nargin только в теле функции.
Вы можете, но вы должны избегать присвоения значения nargin
, поскольку он потеряет вторую семантику:
nargin('sparse')
ans =
6
nargin = 0;
nargin('sparse')
Index exceeds matrix dimensions.