Matlab成长之路_4(关于matlab的cell)

 

  前言

  Matlab中的cell数据类型有点类似于矩阵,不过它比矩阵更灵活,矩阵中的所有元素只能是同一种数据类型,而cell中的元素类型可以是不同的数据类型,几乎涵盖了matlab中的所有类型,比如说数值,字符,数组,struct甚至cell本身等。Cell应用很广,你可以将其理解成一个排列顺序的功能强大的结构体,可以用来存储各种变量。

  开发环境:Matlab2012a

 

  实验基础

  访问cell中元素时,可以使用大括号或者小括号。如果使用大括号的话,则每个元素按照自己的形式赋值。如果采用小括号赋值,则所赋的值需要被大括号括起来。如果在终端直接输入cell变量,则是看不到其内部值的,只能看到它的尺寸。需要看它的内容可以使用celldisp()函数。

  本实验就是构造1个2*2的cell,且它的每个元素的数据类型不相同,具体看实验代码。

 

  实验结果

  cell a的显示如下:

  

 

  a{2,2}其实也是一个cell,其内容显示如下:

  

 

 

  实验代码及注释:

 a{1,1} = [1 2 3 4 5];
 a{1,2} = {'I love';'中国'};
 a{2,1} = [1+1*i,4*i];

%% number of layers
params.num_isa_layers = 2;

%% fovea sizes
fovea{1}.spatial_size = 16;
fovea{1}.temporal_size = 10;
fovea{2}.spatial_size = 20;
fovea{2}.temporal_size = 14;
params.fovea = fovea;

a{2,2} = params;
celldisp(a)
celldisp(a{2,2}.fovea)

 

 

  参考资料:

     http://ilovematlab.cn/thread-1741-1-1.html

 

 

 

 

 

posted on 2012-12-27 16:35  tornadomeet  阅读(6576)  评论(0编辑  收藏  举报

阿萨德发斯蒂芬