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.

Llame a funciones locales mediante identificadores de función

En este ejemplo se muestra cómo crear identificadores para las funciones locales. Si una función devuelve identificadores a funciones locales, puede llamar a las funciones locales fuera de la función main. Este enfoque le permite tener varias funciones invoables en un solo archivo.

Cree la siguiente función en un archivo, en la carpeta de trabajo.ellipseVals.m La función devuelve un struct con identificadores a las funciones locales.

  % Copyright 2015 The MathWorks, Inc.  function fh = ellipseVals fh.focus = @computeFocus; fh.eccentricity = @computeEccentricity; fh.area = @computeArea; end  function f = computeFocus(a,b) f = sqrt(a^2-b^2); end  function e = computeEccentricity(a,b) f = computeFocus(a,b); e = f/a; end  function ae = computeArea(a,b) ae = pi*a*b; end  

Invoque la función para obtener una de las asas de las funciones locales.struct

h = ellipseVals 
 h =     struct with fields:             focus: @computeFocus     eccentricity: @computeEccentricity             area: @computeArea  

Llame a una función local utilizando su identificador para calcular el área de una elipse.

h.area(3,1) 
 ans =      9.4248  

Como alternativa, puede utilizar la función para crear una matriz de celdas de identificadores de función de todas las funciones locales automáticamente.localfunctions Este enfoque es conveniente si espera agregar, quitar o modificar nombres de las funciones locales.

Consulte también

Ejemplos relacionados

Más acerca de