Matlab中的@什么意思
3个回答
展开全部
@fun 为一个函数柄
我自己理解
@fun 可以理解为一个fun函数的指针
如果一个函数 比如quad(@fun,x0,x1)
(这个表示对fun函数从x0到x1积分)
把@fun相当于quad的一个参数传到quad中
网上资料:
一、函数句柄
所谓函数句柄,个人认为可以将其理解成一个函数的代号,就像一个人的名字。这样在调用时可以调用函数句柄而不用调用该函数。
变量不仅可以用来表示数值(如: 1, 0.2, -5), 用来表示字符串(如: 't', 'casino'), 也可以用来表示函数哦. 当然, 你也看到了前面我们提到的函数都是一个一个的文件, 直接塞到一个变量里面似乎太大, 不过我们可以'提纲挈领', 抓住函数的handle(句柄), 就可以.
将函数句柄赋值给变量要用到@符号, 语法: 变量名=@函数名, 此处地函数名可以是当前Matlab中可以使用的任意函数 例如: , 此后mysin就和sin同样地使用, mysin(pi)和sin(pi)的含义相同.
语法如下:
变量名= @ 函数名;
@的作用就是将一个函数的函数句柄赋值给等号左边的变量。在调用函数时就可以调用该句柄,可以实现同样的功能。
例:
首先我们写一个求均值的函数:
function y=average(x)
y=mymean(x);
function a=mymean(v)
a=sum(v)/length(v);
定义一个数组z:
z=[1,2,3,4,5,6,7];
>> average(z)
ans =
4
>>
handle =
@average
>>
ave =
@average
>> ave(z)
ans =
4
二、匿名函数
匿名函数是函数句柄的一种特殊用法,这里所得到的函数句柄变量不指向特定的函数(即不指向函数M文件中的函数名),而是指向一个函数表达式(具体表达式)。
语法如下:
变量名=@(输入参数列表)运算表达式;
例子:
为了说明问题,我们用简单的两个数相加,
>>
sum =
@(x,y)x+y
>> sum(2,3)
ans =
5
http://apps.hi.baidu.com/share/detail/42436785
我自己理解
@fun 可以理解为一个fun函数的指针
如果一个函数 比如quad(@fun,x0,x1)
(这个表示对fun函数从x0到x1积分)
把@fun相当于quad的一个参数传到quad中
网上资料:
一、函数句柄
所谓函数句柄,个人认为可以将其理解成一个函数的代号,就像一个人的名字。这样在调用时可以调用函数句柄而不用调用该函数。
变量不仅可以用来表示数值(如: 1, 0.2, -5), 用来表示字符串(如: 't', 'casino'), 也可以用来表示函数哦. 当然, 你也看到了前面我们提到的函数都是一个一个的文件, 直接塞到一个变量里面似乎太大, 不过我们可以'提纲挈领', 抓住函数的handle(句柄), 就可以.
将函数句柄赋值给变量要用到@符号, 语法: 变量名=@函数名, 此处地函数名可以是当前Matlab中可以使用的任意函数 例如: , 此后mysin就和sin同样地使用, mysin(pi)和sin(pi)的含义相同.
语法如下:
变量名= @ 函数名;
@的作用就是将一个函数的函数句柄赋值给等号左边的变量。在调用函数时就可以调用该句柄,可以实现同样的功能。
例:
首先我们写一个求均值的函数:
function y=average(x)
y=mymean(x);
function a=mymean(v)
a=sum(v)/length(v);
定义一个数组z:
z=[1,2,3,4,5,6,7];
>> average(z)
ans =
4
>>
handle =
@average
>>
ave =
@average
>> ave(z)
ans =
4
二、匿名函数
匿名函数是函数句柄的一种特殊用法,这里所得到的函数句柄变量不指向特定的函数(即不指向函数M文件中的函数名),而是指向一个函数表达式(具体表达式)。
语法如下:
变量名=@(输入参数列表)运算表达式;
例子:
为了说明问题,我们用简单的两个数相加,
>>
sum =
@(x,y)x+y
>> sum(2,3)
ans =
5
http://apps.hi.baidu.com/share/detail/42436785
展开全部
就是调用函数,后面的fun代表函数名
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是计算精度的问题,不信你输入 det(inv(A))-1/det(A)便知两者其实并不完全相等(虽然理论上相等),所以一般判断两数相等是以其差小于某个阈值来判断的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询