Index Substructures and Fields
Use these guidelines when indexing substructures and fields
for code generation:
Reference substructure field values individually using dot
notation
For example, the following MATLAB® code uses dot notation
to index fields and substructures:
The generated code indexes elements of the structures in this
example by resolving symbols as follows:
Dot Notation | Symbol
Resolution |
---|
substruct1.a1 | Field a1 of local structure substruct1 |
substruct2.ele3.a1 | Value of field a1 of field ele3 ,
a substructure of local structure substruct2 |
substruct2.ele3.a2(1,1) | Value in row 1, column 1 of field a2 of
field ele3 , a substructure of local structure substruct2 |
Reference field values individually in structure arrays
To reference the value of a field in a structure array, you
must index into the array to the structure of interest and then reference
that structure's field individually using dot notation, as in this
example:
To reference all the values
of a particular field for each structure in an array, use this notation
in a for
loop, as in this example:
This example uses the repmat
function
to define an array of structures, each with two fields a
and b
as
defined by s
. See Define Arrays of Structures for Code Generation for more information.
Do not reference fields dynamically
You cannot reference fields in a structure by using dynamic
names, which express the field as a variable expression that MATLAB evaluates
at run time (see Generate Field Names from Variables).