Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Compruebe las entradas de función con validateattributes

Compruebe que las entradas de la función se ajustan a un conjunto de requisitos mediante la función.validateattributes

requiere que se pase la variable para comprobar y los tipos de datos admitidos para esa variable.validateattributes Opcionalmente, pase un conjunto de atributos que describan las dimensiones o valores válidos.

Comprobar tipo de datos y otros atributos

Defina una función en un archivo denominado que acepte hasta tres entradas:, y.checkme.mabc Compruebe si:

  • es una matriz bidimensional de valores positivos de doble precisión.a

  • contiene 100 valores numéricos en una matriz con 10 columnas.b

  • es un vector de caracteres no vacío o matriz de celdas.c

Las llaves indican que el conjunto de tipos de datos y el conjunto de atributos adicionales están en matrices de celdas.{} Las matrices de celdas le permiten almacenar combinaciones de datos de texto y numéricos, o vectores de caracteres de diferentes longitudes, en una sola variable.

Llame con entradas válidas.checkme

checkme(pi,rand(5,10,2),'text')
All inputs are ok.

El valor escalar es bidimensional porque.pisize(pi) = [1,1]

Llame con entradas inválidas.checkme La función emite un error para la primera entrada que falla la validación y detiene el procesamiento.validateattributescheckme

checkme(-4)
Error using checkme (line 3) Expected input to be positive.
checkme(pi,rand(3,4,2))
Error using checkme (line 4) Expected input to be an array with number of elements equal to 100.
checkme(pi,rand(5,10,2),struct)
Error using checkme (line 5) Expected input to be one of these types:    char, cell  Instead its type was struct.

Los mensajes de error predeterminados utilizan el término genérico para hacer referencia al argumento que falló la validación.input Cuando se utiliza el mensaje de error predeterminado, la única manera de determinar qué entrada ha fallado es ver la línea de código especificada en.checkme

Agregar nombre de entrada y posición a errores

Definir una función en un archivo denominado que realiza la misma validación que, pero agrega detalles sobre el nombre de entrada y la posición a los mensajes de error.checkdetails.mcheckme

El vector de caracteres vacío para la cuarta entrada es un marcador de posición para un nombre de función opcional.''validateattributes No es necesario especificar un nombre de función porque ya aparece en el mensaje de error. Especifique el nombre de la función cuando desee incluirlo en el identificador de error para el control de errores adicional.

Llame con entradas inválidas.checkdetails

checkdetails(-4)
Error using checkdetails (line 3) Expected input number 1, First, to be positive.
checkdetails(pi,rand(3,4,2))
Error using checkdetails (line 4) Expected input number 2, Second, to be an array with number of elements equal to 100.

Consulte también

|