在MATLAB中,定义函数主要有以下几种方法:
使用function关键字
这是定义函数最常用的方法。函数定义以`function`关键字开始,后跟输出变量列表、函数名和输入参数列表。函数体则包含在一对大括号`{}`中。例如:
```matlab
function [y, z] = myFunction(x, y)
y = x + y;
z = x * y;
end
```
匿名函数(内联函数)
匿名函数使用`@`符号定义,并紧跟一组输入参数。函数体同样包含在一对大括号`{}`中。例如:
```matlab
f = @(x, y) x + y;
```
类方法
在类定义中,可以使用`methods`块来定义方法。类方法可以定义为静态方法或非静态方法。静态方法不需要类的实例即可调用,而非静态方法需要类的实例。例如:
```matlab
classdef MyClass
methods
function result = myMethod(input)
result = input * 2;
end
end
end
```
函数定义的一般格式
函数定义的一般格式如下:
```matlab
function [output1, output2, ... , name_of_function(input1, input2, ...)] = function_name(input1, input2, ...)
% 函数体
% ...
end
```
调用函数
定义好函数后,可以通过函数名加输入参数的方式调用它。例如:
```matlab
result = myFunction(1, 2);
```
注意事项
函数名必须与M文件名一致,除非通过文件名调用函数。
函数体内部可以使用`return`关键字返回结果。
可以使用`nargin`和`nargout`来获取输入和输出参数的个数。