関数ワークスペースの変数参照
이전 댓글 표시
関数ワークスペースの変数を参照する方法をご教示ください。
やりたいことは
関数でデータを読み込み、ベースワークスペースの値を書き換える、です。
現状実装したコードは以下です。
run('option.m');
funcWsName = who ('OP_*');
for j = 1:numel(funcWsName)
funcWsData = evalin('caller' ,funcWsName{j});
baseWsData = evalin('base' ,funcWsName{j});
baseWsData.Value = funcWsData.Value;
end
funcWsDataで関数ワークスペースの値を取得できるかなと思ったのですが、ベースが参照されていました。
asigninを使用する方法でも良いので、書き換える方法をご教示ください。
답변 (1개)
Musashi Ito
2020년 2월 26일
편집: Musashi Ito
2020년 2월 26일
1 개 추천
関数の出力引数で関数内の値を出力する方法はいかがでしょうか。関数を呼び出すスクリプトファイル側で、ベースワークスペースで扱っている変数名を関数の出力に指定して、上書きすれば簡単にできるかなと思います。
出力引数の数が多い場合は、構造体やテーブルのデータ型でデータを整理してから出力すればすぐできるかなと思います。
카테고리
도움말 센터 및 File Exchange에서 ワークスペース変数と MAT ファイル에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!