网站建设与网页设计专业,免费的网站登录模板下载,源代码网站开发,注册公司流程及手续Matlab 中的用法主要有#xff1a;函数句柄、函数表达式、调用父类以及类文件夹。 前两种有很多介绍#xff0c;后两种涉及类#xff0c;介绍的人很少。前2个例子#xff0c;参考了其它博客#xff0c;总感觉用法都写的不全#xff0c;所以在此基础上#xff0c;补充了3… Matlab 中的用法主要有函数句柄、函数表达式、调用父类以及类文件夹。 前两种有很多介绍后两种涉及类介绍的人很少。前2个例子参考了其它博客总感觉用法都写的不全所以在此基础上补充了3、4 。感兴趣的可以去看看徐潇编著的《matlab面向对象编程-从入门到设计模式》注不是广告、不是推销、纯粹的是觉得这本书很不错吗想推荐给各位。
1. 充当函数句柄的作用 用法变量1 内置函数名 调用变量2 变量1参数1,参数2,……
注输入参数是上一行设置是的函数输入参数内置函数是定义好的系统定义、自己定义都行 f cos
f 包含以下值的 function_handle:cosf(pi/6)
ans 0.8660f(pi/3)
ans 0.50002. 构造函数表达式 用法变量名(输入参数列表)运算表达式 例如构造一个一元二次方程函数x24x4y求解x3、x4时y的值 y (x)(x.^24*x4)
y 包含以下值的 function_handle:(x)(x.^24*x4)y([3,4])
ans 25 363. 调用父类基类 要调用超类方法方法名称XXX必须与子类方法***的名称匹配 比如新建一个Ponit3D类该类继承的父类是Point2D。代码来源于徐潇编著的《matlab面向对象编程-从入门到设计模式》 classdef Point2D handle % 定义父类 properties x; y; end methods function Obj Point2D(x0,y0) Obj.x x0; Obj.y y0; end function print(Obj) disp([x,num2str(Obj.x)]); disp([y,num2str(Obj.y)]); end function Sum add(Obj) Sum Obj.xObj.y; end end end classdef Point3D Point2D % 定义子类 properties z; end methods function Obj Point3D(x0,y0,z0) Obj ObjPoint2D(x0,y0); Obj.z z0; end function print(Obj) printPoint2D(Obj) disp([z,num2str(Obj.z)]); end function Sum add(Obj) temp addPoint2D(Obj); Sum tempObj.z; end end end 本代码共有三个使用实例红色标注。 用法父子类同名方法或对象父类名称 注“要调用超类方法方法名称Obj必须与子类方法print的名称匹配” 如果将Poni3D类中方法名称Print改成Print1则会显示print1 不是基类 Point2D 的可访问方法。因此需注意的是子类调用父类的方法时名称必须与父类匹配。 4. 存放类文件夹
用法文件夹命名类名
egPoint2D 不足之处敬请斧正
路漫漫其修远兮吾将上下而求索