MATLAB Answers

How To Generate Field Names from Variables

1 view (last 30 days)
Krzysztof
Krzysztof on 21 Nov 2013
The following code behaves rather unexpectedly to me:
r .ab = 'cd';
try assert (r .([ 'a'; 'b' ]))
catch e
assert (all (e .identifier == 'MATLAB:nonExistentField'))
end
assert (all (r .([ 'ax'; 'bx' ]) == 'cd'));
It seems that MATLAB considers only (fieldname (:, 1)), except when there is only one column, in which case it considers only (fieldname (1)). All this is undocumented. Isn’t that weird? I would expect MATLAB to error out with 'mustBeFieldName' in both cases instead.

Answers (0)

Community Treasure Hunt

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

Start Hunting!