How do I copy a Simulink Parameter Object by value in Simulink?

16 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2009 年 6 月 27 日
編集済み: MathWorks Support Team 2014 年 4 月 24 日
I have a Simulink Parameter Object, and I would like to copy this variable by value. When I execute the following code, I note that the copy I make using the "=" (equals) operator is actually a copy by reference:
a=Simulink.Parameter; % create a parameter object
a.Value=5; % set a value
b=a; % copy by reference
b.Value=10; % change the value in the copy
% Now, note that the value in the original has also changed.
a.Value

採用された回答

MathWorks Support Team
MathWorks Support Team 2013 年 10 月 18 日
In order to create a new Simulink Parameter Object from an existing one, use the "copy" method when using MATLAB R2012a or later.
The following code creates a copy by value of a Simulink Parameter object.
a=Simulink.Parameter; % create a parameter object
a.Value=5; % set a value
b=a.copy; % use copy
b.Value=10; % change the value in the copy
% Now we notice that the original value has not changed:
a.value
If you are using MATLAB versions prior to R2012a, please use "deepCopy" rather than "copy".

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeScopes and Data Logging についてさらに検索

製品


リリース

R2014a

Community Treasure Hunt

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

Start Hunting!

Translated by