矩阵符号的含义:xx@yy



我在理解以下代码片段时遇到问题。简单的调用如下所示,没有任何赋值或:

expression1@expression2;

expression2指的是自定义句柄类。

我已经研究了句柄,但无法从正常示例中@(x) x^2;f = @sin;中弄清楚给定的调用结构的作用,并且无法在线找到类似的示例。

任何关于符号可能做什么的帮助将不胜感激。

没有上下文很难确定,但这看起来像一个调用超类方法的子类(通常在子类实现中的附加功能之前(......

请参阅此处的文档。

链接文档中的示例:

classdef Sub < Super
methods
function foo(obj)
% preprocessing steps
...
foo@Super(obj);
% postprocessing steps
...
end
end
end

在这种情况下,foo函数在Super类中定义,在子类Sub中实现,并扩展(使用预处理和后处理(。foo@Super(obj)表示法从子类调用超类方法。

注意这类似于SuperObj.foo(obj),只是你没有类Super的实例化对象(SuperObj(来进行这个调用。而且由于您正在扩展/覆盖函数的超类版本,因此您不能像子类实现相同时那样调用obj.foo()- 这就是您已经使用的函数!因此需要这种不同的符号。

相关内容

  • 没有找到相关文章

最新更新