现代等价于superiorto() 函数

Posted

技术标签:

【中文标题】现代等价于superiorto() 函数【英文标题】:Modern equivalent of the superiorto() function 【发布时间】:2020-04-20 22:16:47 【问题描述】:

我正在重写一个旧的 MATLAB 包。作为重写的一部分,我将使用class() 函数定义的两个类(我们称它们为old_class1old_class2)更新为使用classdef 定义的类。

old_class1 的定义包含superiorto('old_class2') 行。在使用 classdef 定义的构造函数中不允许使用此函数,但我找不到任何等效函数。如何在使用 classdef 定义的类中创建与 superiorto() 等效的功能?

【问题讨论】:

【参考方案1】:

superiorto 在 MATLAB 中不再可用,但我能够找到 a copy of old documentation,这表明它用于确定在将多个不同的类作为函数参数给出时调用了哪个对象的方法。例如,给定obj1=class1()obj2=class2(),而class1 构造函数包含superiorto('class2'),将导致function(obj1,obj2) to callclass1.function, rather thanclass2.function`。

借助现代的classdef 功能,setting the InferiorClasses property 也可以实现同样的功能:

classdef (InferiorClasses = ?class2) class1

【讨论】:

以上是关于现代等价于superiorto() 函数的主要内容,如果未能解决你的问题,请参考以下文章

JwtClaimsSetVerifier 已弃用。现代的等价物是啥?

javascript 等价于 php unpack() 函数

等价于类函数

jQuery函数的等价原生函数代码示例

Python 等价于 unix cksum 函数

Python 等价于内联函数或宏