グローバルワークスペ​ースのグローバル変数​をローカルワークスペ​ースに移動させること​は出来ますか?

조회 수: 10 (최근 30일)
MathWorks Support Team
MathWorks Support Team 2017년 5월 12일
답변: MathWorks Support Team 2017년 5월 12일
グローバルワークスペースのグローバル変数をローカルワークスペースに移動させ、そこで継続的に使用することの可否を教えてください。
 

채택된 답변

MathWorks Support Team
MathWorks Support Team 2017년 5월 12일
実現する機能は提供されておりませんが、以下のような関数を作成することにより可能です。
 
function moveToLocal( str )
% MOVETOLOCAL Move a variable form the global to the local workspace
% str should be the name of the variable that is already in the global workspace
% that you wish to move to the local workspace of the calling function.
% The variable will still exist in the global workspace but in the local
% workspace of the calling function the variable will be scoped locally
eval(['global ' str]) % グローバル変数をローカル変数内に定義します。
k=eval(str); % グローバルワークスペースの変数を取得します。 
evalin( 'caller', ['clear ' str]); % 呼び出し側のワークスペースから値をクリヤします。 
assignin( 'caller', str, k); % 呼び出し側のローカル変数に値を代入します。
 

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 変数에 대해 자세히 알아보기

제품


릴리스

R2007a

Community Treasure Hunt

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

Start Hunting!