Matlab structure of struct
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Florian Spicher
el 12 de Nov. de 2021
Comentada: Florian Spicher
el 12 de Nov. de 2021
Hi!
I'd like to create structures and store them, but I don't know how to do it. For example, for a function, we write something like
function f=MyFunction(arg1,...,argN)
...
end
and then we write the different operations. This allows us to write MyValue=MyFunction(...). I'd like to do the same for structures, something like MyObject=MyStruct(...). Could someone give me a reference document which explains how to do this for structures please? So far, the only thing I found is how to create structures from the command window. Thanks!
2 comentarios
Jan
el 12 de Nov. de 2021
Stucts can be defined in the code exactly as they are created in the command window. See:
doc struct
doc cell2struct
doc table2struct
Respuesta aceptada
Jan
el 12 de Nov. de 2021
MyStruct = cell2struct(cell(2, 1), {'field1'; 'field2'})
Now the fields exist, but contain empty matrices only.
Más respuestas (1)
Image Analyst
el 12 de Nov. de 2021
Not sure what you mean. You can call the function whatever you want and it can take in and return whatever you want. If you want to create a custom structure, there is already a function called struct() to do that.
5 comentarios
Image Analyst
el 12 de Nov. de 2021
Looks like Jan showed you how to create one struct. If you want an array of them, call repmat():
MyStruct = cell2struct(cell(2, 1), {'field1'; 'field2'})
structArray = repmat(MyStruct, 5, 2 )
structArray will be a 5 by 2 array of structures.
If that helps, can you "Vote" for my answer?
Ver también
Categorías
Más información sobre Structures en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!