我设了一个嵌套匿名函数。
>> myffhd=@(a)(quad(@(x)(a+x),1,2))
从运算结果看来,x的取值是“1,2”的平均值。并且似乎必须要输入两个及以上的常数,x的取值为这些常数中前两个的平均值。(如下)
>> myffhd=@(a)(quad(@(x)(a+x),1,2,3))
但是如果只输入一个常数(如下),在调用该匿名函数时就会出错
@(a)(quad(@(x)(a+x),1))
报错内容:
>> myffhd(5)
输入参数的数目不足。
出错 quad (line 60)
if ~isscalar(a) || ~isscalar(b)
出错 @(a)(quad(@(x)(a+x),1))
这是为什么呢?
>> myffhd=@(a)(quad(@(x)(a+x),1,2))
从运算结果看来,x的取值是“1,2”的平均值。并且似乎必须要输入两个及以上的常数,x的取值为这些常数中前两个的平均值。(如下)
>> myffhd=@(a)(quad(@(x)(a+x),1,2,3))
但是如果只输入一个常数(如下),在调用该匿名函数时就会出错
@(a)(quad(@(x)(a+x),1))
报错内容:
>> myffhd(5)
输入参数的数目不足。
出错 quad (line 60)
if ~isscalar(a) || ~isscalar(b)
出错 @(a)(quad(@(x)(a+x),1))
这是为什么呢?