Why is `struct('name', value)` different with dot notation?

1 Ansicht (letzte 30 Tage)
Albert Bing
Albert Bing am 13 Dez. 2019
Beantwortet: Fangjun Jiang am 13 Dez. 2019
a = {{'abc'}};
S1 = struct('f', a};
S2.f = a;
I thought S1.f and S2.f have the same value. But it's not.
S1.f = {'abc'};
S2.f = {{'abc'}};
Why?

Antworten (1)

Fangjun Jiang
Fangjun Jiang am 13 Dez. 2019
It is in the document. Check this example in the document. One creates a 1x2 struct array. The other creates a single struct.
>> s = struct('type',{'big','little'},'color','red')
s =
1×2 struct array with fields:
type
color
>> s = struct('type',{{'big','little'}},'color','red')
s =
struct with fields:
type: {'big' 'little'}
color: 'red'

Kategorien

Mehr zu Structures finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by