我有一個嵌套的單元格數組,其中有一個用於信息的字段,另一個用於另一個單元格。 如何使用輔助變量刪除單元格?Octave Cell Array
例如:
T =電池陣列
P的開始= T
P = {2}根據需要多次。
p {2} = []
缺失對細胞的不在原始列表可見。
我有一個嵌套的單元格數組,其中有一個用於信息的字段,另一個用於另一個單元格。 如何使用輔助變量刪除單元格?Octave Cell Array
例如:
T =電池陣列
P的開始= T
P = {2}根據需要多次。
p {2} = []
缺失對細胞的不在原始列表可見。
我不認爲你所做的代碼做了你認爲它做的事情。 Octave \ Matlab不完全實現指針的概念。
正如燒杯說的那樣,賦值操作是複製,所以P = T
是另一個單元陣列。實際上,出於性能方面的原因,直到您更改其中之一的內容爲止,它仍然是相同的陣列。即直到P{2}={}
在此時T={}
和P={[1,1] = [](0x0) [1,2] = {}(0x0)}
。 (P = P{2}
甚至沒有按順序工作。)
這是好的,因爲Octave \ Matlab不打算公開內存尋址等。即您無法確定變量P
和T
是否存儲在相同的地址。相等運算符與數組的元素一起工作,並不完全適用於單元格。
Octave \ Matlab是專爲數字運算而設計的。 簡單創建操作任意數據結構超出其範圍。 創建列表以下鏈接可能有幫助,雖然解決方案非常複雜: MATLAB linked list
這是不可能的。一旦分配了'P = T','P'就是'T'的一個新副本,與原始數據無關。 – beaker