Pao*_*ani 2 matlab handle notation
我无法理解以下代码段.简单的调用看起来像这样,没有任何赋值或者:
expression1@expression2;
Run Code Online (Sandbox Code Playgroud)
expression2 指的是一个自定义的句柄类.
我查看了句柄,但无法弄清楚给定的调用结构的作用,从正常的例子@(x) x^2;或者在f = @sin;网上找不到类似的例子.
任何关于符号可能做什么的帮助都表示赞赏.
没有上下文,很难肯定,但这看起来像一个子类调用超类方法(通常在子类实现中的附加功能之前)...
请参阅此处的文档.
来自链接文档的示例:
classdef Sub < Super
methods
function foo(obj)
% preprocessing steps
...
foo@Super(obj);
% postprocessing steps
...
end
end
end
Run Code Online (Sandbox Code Playgroud)
在这种情况下,foo函数在Super类中定义,在子类中实现Sub,并进行扩展(使用预处理和后处理).该foo@Super(obj)表示法从子类调用超类方法.
请注意,这类似于SuperObj.foo(obj),除了您没有实例化的对象(SuperObj)Super来进行此调用.而且因为你伸出/覆盖功能的超类版本,你不能只是打电话obj.foo(),你会如果子类实现是相同的-这是你已经在功能!因此需要这种不同的符号.
| 归档时间: |
|
| 查看次数: |
68 次 |
| 最近记录: |