Contenido principal

Usar funciones nargin durante la validación de argumentos

La función nargin devuelve el número de argumentos de entrada de una función que se proporcionan al llamar a la función que se está ejecutando. Cuando se utiliza la validación de argumentos de función, el valor devuelto por nargin dentro de una función es el número de argumentos de posición proporcionados cuando se llama a la función.

Los argumentos repetidos son argumentos de posición y, por lo tanto, el número de argumentos repetidos que se pasan a la función cuando se llama se incluye en el valor devuelto por nargin.

El valor devuelto por nargin no incluye argumentos de entrada opcionales que no se incluyen en la llamada a la función. Además, nargin no cuenta ningún argumento nombre-valor.

Utilice nargin para determinar si se pasan argumentos de posición opcionales a la función cuando se llama. Por ejemplo, esta función declara tres argumentos de posición y un argumento nombre-valor. A continuación, se explica cómo la función determina qué argumentos se pasan cuando se llama.

  • nargin determina si el argumento de posición opcional c se pasa a la función con un bloque switch.

  • isfield determina si el argumento nombre-valor para Format se pasa a la función.

function result = fNargin(a,b,c,namedargs)
    arguments
        a (1,1) double
        b (1,1) double
        c (1,1) double = 1
        namedargs.Format (1,:) char
    end

    % Function code
    switch nargin
        case  2
            result = a + b;
        case 3
            result = a^c + b^c;
    end
    if isfield(namedargs,"Format")
        format(namedargs.Format);
    end
end

En esta llamada a la función, el valor de nargin es 2:

result = fNargin(3,4)
result =

     7

En esta llamada a la función, el valor de nargin es 3:

result = fNargin(3,4,7.62)
result =

   4.3021e+04

En esta llamada a la función, el valor de nargin es 3:

result = fNargin(3,4,7.62,Format="bank")
result =

      43020.56

Consulte también

| |

Temas