MATLAB 中的匿名函数简单介绍

2025/07/23 通信 MATLAB 共 590 字,约 2 分钟

一、MATLAB 匿名函数简介(Anonymous Function)

匿名函数是 MATLAB 中一种简洁的函数定义方式。 它是没有函数名文件一行代码即可定义的函数,常用于简单运算或临时处理逻辑。

二、基本语法

f = @(参数列表) 表达式;
  • f:函数句柄名(你自定义的变量名)

  • @:标识符,表示这是一个匿名函数

  • 参数列表:输入变量,用括号包裹

  • 表达式:用输入变量计算返回值的数学表达式

三、示例说明

  • 求平方函数
square = @(x) x.^2;
square(3)   % 输出 9
  • 线性函数
f = @(x, a, b) a*x + b;
f(2, 3, 1)  % 输出 7(3*2 + 1)
  • 逻辑函数
is_even = @(x) mod(x, 2) == 0;
is_even(4)  % 输出 true
  • 返回函数句柄
% 线性函数 y = a*x + b
make_linear = @(a, b) @(x) a*x + b;

f1 = make_linear(2, 1);   % 得到 f1(x) = 2x + 1
f2 = make_linear(5, -3);  % 得到 f2(x) = 5x - 3

f1(2)  % 输出 5
f2(2)  % 输出 7

四、特点总结

特性说明
快速简洁无需单独写 .m 文件
一行定义只能写单个表达式,不支持多行逻辑
常用于回调如图像按钮、优化函数、自定义比较函数等
可嵌入主程序便于临时使用的小逻辑函数

⚠️ 注意:

  • 不支持控制语句(如 iffor);

  • 可返回函数句柄(常用于参数化函数);

  • 若逻辑复杂,请用标准函数文件 function ... end

文档信息

Search

    Table of Contents