matlab コードを実行するとエラーが発生します。ここでは、前のコードの出力の 1 つを新しいコードへの入力として使用しようとしています。
??? Reference to non-existent field 'y1'.
誰でも私を助けることができますか?
matlab コードを実行するとエラーが発生します。ここでは、前のコードの出力の 1 つを新しいコードへの入力として使用しようとしています。
??? Reference to non-existent field 'y1'.
誰でも私を助けることができますか?
フィールドにアクセスする前に、フィールドが存在するかどうかを確認することをお勧めします。
if isfield( s, 'y1' )
% s.y1 exists - you may access it
s.y1
else
% s.y1 does not exist - what are you going to do about it?
end
エドリックのコメントを考慮に入れるために、別の可能な方法は
try
% access y1
s.y1
catch em
% verify that the error indeed stems from non-existant field
if strcmp(em.identifier, 'MATLAB:nonExistentField')
fprintf(1, 'field y1 does not exist...\n');
else
throw( em ); % different error - handle by caller?
end
end