matlab中的cell类型也叫作细胞型数据结构(cell),可以使不同类型和不同维数的数组可以共存,细胞型数组实际上可以认为是一种以任意形式的数组为分量的多维数组。
可以与C语言中的struct类型类比。
常用语法:
C = cell ( dim ); 建立一个空的cell矩阵,如果dim是一个数,那么矩阵便是dim * dim 的;如果dim是一个向量,那么矩阵的维度是dim(1)*dim(2)*...*dim(n)。
C = cell (dim1,dim2,...dimN); 创建一个维度为dim1 * dim2 * ... *dimN的cell矩阵。
D = cell (obj); obj包含各种各样的实体类型,诸如字符串“hello”,结构struct,cell本身。。。
举个栗子:
首先创建一个空的M*N的cell数组:
C = cell(M, N); 或
C{M,N} = [];
C{ i, j }可表示第i 行第 j 列的元胞
如果想要访问元胞中的矩阵,C{3,4}(2,1)即表示第三行第四列中元胞中的矩阵的第二行第一列的元素。
总的来说,{}用来引用cell单元,()用来引用cell中的具体数据。
此外元包还有自己的可视化工具,celldisp()和cellplot()分别用作显示元包的内容和画出元包。