How to Assign a Struct Field to a Matrix?
1 回表示 (過去 30 日間)
古いコメントを表示
How can it assign field C and field D to the first and second rows of G, respectively?
A.B.C = [1 2 3];
A.B.D = [3 4 5];
Whend I do the following, I get the error „Subscripted assignment dimension mismatch.“
G(1, :) = A.B.C
G(2, :) = A.B.D
0 件のコメント
採用された回答
dpb
2017 年 3 月 4 日
編集済み: dpb
2017 年 3 月 4 日
'Cuz you must have an already-existing G variable...
>> g=pi;
>> g(1,:)=A.B.C
Subscripted assignment dimension mismatch.
>>
>> clear g % now ensure no previous variable exists first...
>> g(1,:)=A.B.C
g =
1 2 3
>> g(2,:)=A.B.D
g =
1 2 3
3 4 5
>>
works just fine if don't have conflicting definition already in workspace. But,
>> g=pi;
>> g=[A.B.C;A.B.D]
g =
1 2 3
3 4 5
>>
is simpler and overwrites the previous g silently even though existed.
However, in general, this looks like a bad road to start down; soon you'll be having issues with using sequential-named fields.
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Structures についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!