2011-11-23 83 views
1

MATLAB保存迭代地爲結構 1)運行的功能 2)每個輸出[vectorA,vectorB],它具有不同的尺寸的載體時,應保存在每個迭代i在結構MATLAB保存迭代地爲結構

但這種語法時才doesn't工作:

for i=1:n 
    [vectorA, vectorB] = anyfunction(i) 
    myStruct(i).vectorA = {[vectorA]}; 
    myStruct(i).vectorB = {[vectorB]}; 
end 
+2

你能後的語法錯誤MES聖人,還是說出你的期望? – cyborg

+1

@Cyborg:感謝您的編輯! Synatax的作品,它只是一個讀出問題:最好不要在矢量周圍放置{[]}。就這樣離開他們。謝謝 – alex

+0

@alex:我添加了一個答案,但後來認識到你的語法實際上有效,無論有沒有{[]},所以我刪除了它。那麼問題是什麼?告訴我們你得到了什麼錯誤信息。 – yuk

回答

1

簡單:

n=5; 
[email protected](x) eig(magic(x)); 

for i=1:n 
    [vectorA, vectorB] = anyfunction(i); 
    myStruct(i).vectorA = vectorA; 
    myStruct(i).vectorB = vectorB; 
end 

myStruct = 

1x5 struct array with fields: 
    vectorA 
    vectorB