1
我想在matlab中執行一個非常基本的賦值來創建一個結構數組。
這裏的主代碼分配它MATLAB:不同結構之間的下標分配
for i=1:n
P(i) = MakePoint(x(i), y(i), z(i));
end
當功能MakePoint
是
function P = MakePoint(x,y,z)
% P is a point with x-coordinate P.x and y-coordinate P.y.
P = struct('x',x,'y',y,'z',z)
end
換句話說,我試圖讓P
和數組的「點」與MakePoint
創建。我得到的錯誤不同結構
如何解決這個之間
下標分配? 謝謝!
你不能在數組中放置'struct'。你可以通過'P {i} = MakePoint(x(i),y(i),z(i))'來使'P'成爲單元陣列。 – David 2014-12-03 02:26:15
@David,這是不正確的。你可以有一系列的結構。唯一的限制是所有的結構數組元素在相同的順序中具有相同的字段名稱。 – Shai 2014-12-03 06:44:50
循環之前'P'的值是多少? – Shai 2014-12-03 06:49:01