raj*_*pit 23 matlab cell-array
使用括号()和花括号访问单元格数组中的元素有什么区别{}?
例如,我试图使用 cell{4} = []和cell(4) = [].在第一种情况下,它将第4 个元素设置为[],但在第二种情况下,它消灭了单元格元素,即将单元格元素数量减少1.
And*_*ein 63
将单元阵列视为规则的同源阵列,其元素都是cells.圆括号(())只是访问cell包装器对象,而使用花括号()访问元素则{}给出了单元格中包含的实际对象.
例如,
A={ [5,6], 0 , 0 ,0 };
Run Code Online (Sandbox Code Playgroud)
看起来像这样:

使元素[] 与括号相等的语法实际上是删除该元素的请求,因此当您要求foo(i) = []删除第i个单元格时.它不是赋值操作,而是一个RemoveElement操作,它使用类似的语法来赋值.
但是,当您这样做时,您foo{i} = []将为第i个单元格分配一个新值(这是一个空数组),从而清除该单元格的内容.