我有一個 m 檔案 ParamStruct.m。以下是該檔案的內容:
global Params
total_params = [];
Params.one = 1;
Params.two = 2;
Params.three = 3;
total_params = [total_params;Params];
Params.one = 4;
Params.two = 5;
Params.three = 6;
total_params = [total_params;Params];
for ii = length(total_params)
Add_Param_Vals
end
然后我有另一個 m 檔案,我將其用作名為 Add_Param_Values 的腳本。該檔案的內容如下:
global Params
disp("adding values: ")
Params.one Params.two
這兩個 m 檔案的目的是 1.) 在 ParamStruct.m 中定義兩個 Params 結構,然后從 ParamStruct 呼叫 Add_Param_Values,以便對于每個呼叫,我可以利用當前 Params 結構作為由 ParamStruct 中的 for 回圈索引的結構。例如,當我在輸出中運行 ParamStruct 時,我希望看到以下內容:
adding values:
ans =
3
adding values:
ans =
9
但相反,我看到
adding values:
ans =
9
所以它似乎只利用了 total_params 變數中的最后一個元素,我不知道如何糾正它。我不想修改 Add_Param_Vals m 檔案中的任何內容,因為我不是它的所有者。有任何想法嗎??
uj5u.com熱心網友回復:
對不起,帖子。我能夠弄清楚。這是我最終做的:
global Params
total_params = [];
Params.one = 1;
Params.two = 2;
Params.three = 3;
total_params = [total_params;Params];
Params.one = 4;
Params.two = 5;
Params.three = 6;
total_params = [total_params;Params];
for ii = 1:length(total_params)
Params = total_params(ii);
Add_Param_Vals
end
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/361466.html
