struct
Arreglo de estructura
Descripción
Un arreglo de estructura es un tipo de datos que agrupa datos relacionados usando contenedores de datos denominados campos. Cada campo puede contener cualquier tipo de datos. Acceda a los datos de un campo utilizando notación de puntos con el formato structName.fieldName.
Creación
Cuando tenga los datos que desee incluir en una estructura nueva, cree la estructura utilizando la notación de puntos para nombrar los campos de uno en uno:
s.a = 1;
s.b = {'A','B','C'}s = struct with fields:
a: 1
b: {'A' 'B' 'C'}
Los nombres de los campos pueden contener letras ASCII (A-Z, a-z), dígitos (0-9) y guiones bajos, y deben comenzar por una letra. La longitud máxima de un nombre de campo es namelengthmax.
También puede crear un arreglo de estructura utilizando la función struct, que se describe más abajo. Puede especificar muchos campos al mismo tiempo o crear un arreglo de estructura no escalar.
Sintaxis
Descripción
s = struct crea una estructura escalar (de 1 por 1) sin campos.
s = struct( crea un arreglo de estructura con el campo y el valor especificados. El argumento de entrada field,value)value puede ser de cualquier tipo de datos, como numérico, lógico, carácter o arreglo de celdas.
Si
valueno es un arreglo de celdas o sivaluees un arreglo de celdas escalar,ses una estructura escalar. Por ejemplo,s = struct('a',[1 2 3])crea una estructura de 1 por 1 en la ques.a = [1 2 3].Si
valuees un arreglo de celdas no escalar,ses un arreglo de estructura con las mismas dimensiones quevalue. Cada elemento descontiene el elemento correspondiente devalue. Por ejemplo,s = struct('x',{'a','b'})devuelves(1).x = 'a'ys(2).x = 'b'.Si
valuees un arreglo de celdas vacío{},ses una estructura (de 0 por 0) vacía.
s = struct(field1,value1,...,fieldN,valueN) crea un arreglo de estructura con múltiples campos.
Si ninguna de las entradas
valuees un arreglo de celdas o si todas las entradasvalueque sean arreglos de celdas son escalares,ses una estructura escalar.Si cualquiera de las entradas
valuees un arreglo de celdas no escalar,stiene las mismas dimensiones que ese arreglo de celdas. Del mismo modo, si dos o más entradasvalueson arreglos de celdas no escalares, todas deben tener las mismas dimensiones.En el caso de cualquier
valueque sea un arreglo de celdas escalar o un arreglo de cualquier otro tipo de datos,structintroduce el contenido devalueen el campo relevante para todos los elementos des. Por ejemplo,s = struct('x',{'a','b'},'y','c')devuelves(1).x = 'a',s(2).x = 'b',s(1).y = 'c'ys(2).y = 'c'.Si cualquier entrada
valuees un arreglo de celdas vacío,{}, la salidases una estructura (de 0 por 0) vacía. Para especificar un campo vacío y mantener los valores de los demás campos, utilice[]como entradavalueen su lugar.
s = struct([]) crea una estructura (de 0 por 0) vacía sin campos.
s = struct( crea una estructura escalar con nombres de campo y valores que se corresponden con las propiedades de obj)obj. La función struct no convierte obj, sino que crea s como estructura nueva. Esta estructura no conserva la información de clase, por lo que las propiedades privadas, protegidas y ocultas se convierten en campos públicos en s. La función struct emite una advertencia cuando usted utiliza esta sintaxis.
