Main Content

La traducción de esta página está obsoleta. Haga clic aquí para ver la última versión en inglés.

Generar nombres de campo desde variables

En este ejemplo se muestra cómo derivar un nombre de campo de estructura en tiempo de ejecución desde una variable o expresión. La sintaxis general es

structName.(dynamicExpression)

donde dynamicExpression es una variable o expresión que, al ser evaluada, devuelve un vector de caracteres o, a partir de la versión R2017b, un escalar de cadena. Los nombres de campo a los que se hace referencia con expresiones se llaman fieldnames dinámicos o, en ocasiones, nombres de campo dinámicos.

Por ejemplo, cree un nombre de campo a partir de la fecha actual:

currentDate = datestr(now,'mmmdd');
myStruct.(currentDate) = [1,2,3]

Si la fecha actual del sistema es el 29 de febrero, este código asigna los datos a un campo llamado Feb29:

myStruct = 
    Feb29: [1 2 3]

El nombre de campo dinámico puede devolver un vector de caracteres o un escalar de cadena. Por ejemplo, puede especificar el campo Feb29 utilizando comillas simples o, a partir de la versión R2017b, dobles.

myStruct.('Feb29')
ans =
     1     2     3
myStruct.("Feb29")
ans =
     1     2     3

Los nombres de campo, como los nombres de variables, deben empezar por una letra, pueden contener letras, dígitos o guiones bajos y distinguen entre mayúsculas y minúsculas. Para evitar posibles conflictos, no utilice los nombres de variables o funciones existentes como nombres de campo.

Consulte también

| | |

Temas relacionados