Matlab如何实现函数重载?Matlab实现函数重载的方法

大家应该都知道C++和Java编程能够实现函数的重载,而当我们使用Matlab的一些函数,如:plot函数,可以发现该函数可以有不同的输入,如:plot(data)、plot(t,data)和plot(X,Y,'LineWidth',2)等。这些就是matlab函数重载的应用。

下面我就通过一个简单的输出输入数中的最大数的函数fun()来说明Matlab在编辑函数时如何实现重载。

方法/步骤:

1.首先打开Matlab(本人使用的是Matlab 2015a,使用其他版本的Matlab影响不大)。在Common Window里输入edit fun(fun可改为任意字符,只为演示用),打开M文件编辑器,此时已创建M文件,文件名为fun。

2.在编辑器内输入 function y=fun(varargin),varargin是Matlab内部变量,类型为元胞数组,如果改为其他变量则会报错。

3.添加代码 narginchk(2,3); 保证输入量的个数,当个数小于2或大于3时程序会报错。

4.Matlab内部有一个nargin变量用于存储函数中输入量的个数。下面用If语句来实现函数的重载。

输入

if nargin==2

a=varargin{1};

b=varargin{2};

y=max([a,b]);

...

通过这段代码,函数可实现输入两个量时的功能。

其中用a来存放输入量的第一个量,用b来存放输入量的第二个量。max()函数返回输入矩阵的最大元素。

5.再输入

elseif nargin==3

a=varargin{1};

b=varargin{2};

c=varargin{3};

y=max([a,b,c]);

end

通过这段代码,函数可实现输入两个量时的功能。

其中用a来存放输入量的第一个量,用b来存放输入量的第二个量,用c来存放输入量的第三个量。

效果如下图

6.保存之后,下面对所编辑的函数进行验证。

Command Window 中分别输入

answer1=fun(12,13,14)

answer2=fun(16,25)

answer3=fun(16)

answer4=fun(12,13,14,15)

结果如下图

7.准确的讲,matlab函数的重载并不是严格意义上的函数重载,但是通过对变量的合理运用,能够实现重载的功能。

希望这一条经验能够帮助到大家!

注意事项

编辑函数是输入变量一定得是varargin,否则Matlab会将输入变量视为一个。

if语句一定要加end

(0)

相关推荐

  • Matlab中编写m脚本和m函数

    matlab中m文件有两种,一种是m脚本文件,一种是m函数文件.下面分别介绍写法. 操作方法 01 m脚本文件相当于批处理文件,是一个matlab命令集合,可以点击执行来执行里面的matlab命令.首 ...

  • 如何在1个Matlab m文件中定义多个函数直接运行

    编写运行程序会遇到"此上下文中不允许函数定义"错误.如果仍希望将全部程序放入一个m文件中,并可以直接运行出结果,该程序包括主程序及主程序中使用的函数,这些函数内容也会写在同一m文件 ...

  • MATLAB R2013b怎么激活?matlab r2013b破解安装及激活详细图文教程

    matlab r2013b 怎样激活?matlab是一款主要面对科学计算.可视化以及交互式程序设计的高科技计算环境,目前已经发布了多个版本,这里本站提供的是matlab r2013b版本,小版本号为8 ...

  • C++虚函数与纯虚函数用法与区别

    操作方法 01 1.C++虚函数与纯虚函数用法与区别,.虚函数和纯虚函数可以定义在同一个类(class)中,含有纯虚函数的类被称为抽象类(abstract class),而只含有虚函数的类(class ...

  • 使用函数栏输入Excel函数的操作方法

      使用函数栏输入Excel函数的操作方法 1.在工作表中选择需要插入函数的单元格,然后在编辑栏中输入"=",再在左侧的函数栏中单击下三角按钮,在打开的列表中选择需要使用的函数,如 ...

  • 几何画板如何绘制函数图像并设定函数定义域

    方法一.使用系统坐标系构造函数图象,设置定义域控制几何画板函数图象大小. 1.选择"绘图"--"绘制新函数",在"新建函数"编辑器中,编辑函 ...

  • excel函数公式找出重复的内容方法

    我们可能经常需要在Excel表格中找出重复数据并将他们删除,如果数据庞大,那么我们根本不好找出重复数据的.这里教大家一个好方法,可以帮你快突显并找到重复数据,今天我们就需要函数公式来帮我们解决这个问题 ...

  • 几何画板怎么绘制函数图像并设定函数定义域?

    函数是中学时代需要接触学习并掌握的,从基本的一次函数.二次函数到指数函数.幂函数.三角函数等等,在研究其函数图像是不可能研究全部,所以要设定定义域来研究部分函数图像,下面就来学习具体技巧. 方法一.使 ...

  • Excel2016查看一个完整的函数说明? Excel2016查看函数说明的技巧

    excel2016表格中使用函数的时候,想要看看函数的说明,该怎么查看呢?下面我们就来看看详细的教程. 1.先要找到菜单栏上的公式按钮,找到需要查看的函数. 2.例如我希望查看SUM这个函数,我可以选 ...

  • excel中的left函数怎么用?left函数使用方法介绍

    在用Excel处理数据的时候,可能会需要在一串信息中截取其中一部分,这时候我们需要根据截取信息的位置,选择LEFT.LEFTB.RIGHT.RIGHTB.MID.MIDB等文本函数来进行计算.那么那么 ...