MATLAB函数句柄、单元数组和结构

来源:互联网 发布:windows.old文件夹 编辑:程序博客网 时间:2024/06/05 17:51


函数句柄、单元数组和结构



函数句柄:包含有引用函数时所有的信息,优点:将函数句柄作为调用中的参量传递到另一个函数;可以保存到数据结构或文件中
     
                函数句柄运算符@

                有两种函数句柄:1、命名函数句柄:创建例如:>>f=@sin
                                                                      调用例如:>>f(pi/4) 或者>>sin(pi/4)
                                          2、匿名函数句柄(anonymous function handle):创建格式:@(input - argument - list)expression     例如:>>g = @(x) x.^2;%得到输入的平方




单元数组:能在一个变量名下组合一套对象(如数字、字符、其他单元矩阵)的方法
                例如:>>C= { f , b, char_array } 
                          >>C 输出的是特性的描述
                          >>C{3} 查看该单元的第三个元素的全部内容
                          >>C(3) 查看该单元的第三个元素的特性描述

               特别注意:单元数组只包含有参量的副本,不包含指向这些参量的指针。也就是说当C的任何参量在C创建之后改变了,C中的描述不会改变




结构:与单元数组类似,可将不同的数据组合为单个变量
          区别:单元的地址由数字寻址
                    结构的元素由用户定义的称为字段的名称寻址
          例如:>>function s =image_stats(f)  %s是一个结构,f是一幅输入图像
                    >>s.dm=size(f);                     % [ M,N ] = size(f) 返回二维图像f的行数和列数
                    >>s.AI=mean2(f);                  % means(f)计算f中元素的平均值
                    >>s.AIrows=mean(f,2);
                    >>s.AIcols=mean(f,1);
          字段名是任意的,如dm,AI     但必须以非数字的字符开始



0 0