@是Matlab中句柄函数的标志符,句柄函数也就是间接调用函数的方法。
@有两种使用方法:
1.handle = @functionname
2.handle = @(arglist)functionname()
方法1等同于引用,即给指定的function重命名为handle。方法2是预先加入function参数,再次调用handle时,直接运算出结果。
这里我先定义一个function,命名为add.m
function out = add(x,y,z)
out = x + y + z;
end
脚本实现@的两种使用:
x= 1;
y =2;
z =3;
cc = @add;
uu = @()add(x,y,z);
disp(uu);
addition = uu()
caddition = cc(x,y,z)
输出结果:
@()add(x,y,z)
addition = 6
caddition = 6