ans
中 。如果未提供第二个输入参数,此函数会运用默认值进行计算 。函数体中提供了两个名为 nargin
和 nargout
的数量,用于告知与函数的每次特定使用相关的输入和输出参数的数目 。rank
函数使用 nargin
,而不需要使用 nargout
。
函数类型
MATLAB 提供了多种不同函数用于编程 。
匿名函数
匿名函数是一种简单形式的 MATLAB 函数,该函数在一个 MATLAB 语句中定义 。它包含一个 MATLAB 表达式和任意数目的输入和输出参数 。您可以直接在 MATLAB 命令行中定义匿名函数,也可以在函数或脚本中定义匿名函数 。这样,您可以快速创建简单函数,而不必每次为函数创建文件 。
根据表达式创建匿名函数的语法为
f = @(arglist)expression下面的语句创建一个求某个数字的平方的匿名函数 。当调用此函数时,MATLAB 会将您传入的值赋值给变量 x
,然后在方程 x.^2
中使用 x
:
sqr = @(x) x.^2;要执行上面定义的 sqr
函数,请键入
a = sqr(5)a =25主函数和子函数
任何非匿名函数必须在文件中定义 。每个此类函数文件都包含一个必需的主函数(最先显示)和任意数目的子函数(位于主函数后面) 。主函数的域比子函数的域更广 。因此,主函数可以从定义这些函数的文件外(例如,从 MATLAB 命令行或从其他文件的函数中)调用,而子函数则没有此功能 。子函数仅对其自己的文件中的主函数和其他子函数可见 。
函数部分中显示的 rank
函数就是一个主函数的示例 。
私有函数
私有函数是一种主函数 。其特有的特征是:仅对一组有限的其他函数可见 。如果您希望限制对某个函数的访问,或者当您选择不公开某个函数的实现时,此种函数非常有用 。
私有函数位于带专有名称 private
的子文件夹中 。它们是仅可在母文件夹中可见的函数 。例如,假定文件夹 newmath
位于 MATLAB 搜索路径中 。newmath
的名为 private
子文件夹可包含只能供 newmath
中的函数调用的特定函数 。
由于私有函数在父文件夹外部不可见,因此可以使用与其他文件夹中的函数相同的名称 。如果您希望创建您自己的特定函数的版本,并在其他文件夹中保留原始函数,此功能非常有用 。由于 MATLAB 在标准函数之前搜索私有函数,因此在查找名为 test.m
的非私有文件之前,它将查找名为 test.m
的私有函数 。
嵌套函数
您可以在函数体中定义其他函数 。这些函数称为外部函数中的嵌套函数 。嵌套函数包含任何其他函数的任何或所有组成部分 。在本示例中,函数 B
嵌套在函数 A
中:
function x = A(p1, p2)...B(p2)function y = B(p3)...end...end与其他函数一样,嵌套函数具有其自己的工作区,可用于存储函数所使用的变量 。但是,它还可以访问其嵌套在的所有函数的工作区 。因此,举例来说,主函数赋值的变量可以由嵌套在主函数中的任意级别的函数读取或被覆盖 。类似地,嵌套函数中赋值的变量可以由包含该函数的任何函数读取或被覆盖 。
全局变量
如果您想要多个函数共享一个变量副本,只需在所有函数中将此变量声明为 global
。如果您想要基础工作区访问此变量,请在命令行中执行相同操作 。全局声明必须在函数中实际使用变量之前进行 。全局变量名称使用大写字母有助于将其与其他变量区分开来,但这不是必需的 。例如,在名为 falling.m
推荐阅读
- cdytn90是华为什么型号手机
- 绥芬河流入哪个国家
- 牛仔裤容易皱是不是不好
- 怎么用彩泥做可爱的小牛
- 迈腾车内如何开启后备箱
- 速冻水饺怎么煮
- 用周字取一个微信名
- 长安cs35定速巡航怎么用法
- qq一直闪退怎么办OPPO