由于matlab是弱类型语言,而C#是强类型语言,所以它们的互操作并不像我想要的那样自然,因此我有点麻烦,我希望我能在这里得到一些建议。
就我而言,我想在matlab中调用一个.NET库。那个.NET库有很多OO结构。我的意图是我现在不想从C#库中改变任何东西。我只是将相对汇编添加到matlab中。
例如,在我的.net库中,我有
class A
{
method1 //not static method
}
class B : A
{
...
}
在我的matlab代码中,我检索了一个B类对象,例如 b ,然后我想调用这个对象的A类方法1。我的自然编码行为将是: b.method1(val); 。
但是,Matlab会给我以下错误,这让我感到不快: 错误:没有为B类找到匹配签名的方法'method1'
我可能会就此问题发表一些研究报告:
我没有在matlab方面进行任何OO编程,所有这些OO类只驻留在dll中。而且我也不想从dll部分改变任何东西。
我看到一些帖子可以通过子类的类调用超类的方法: func @ superclass(val)。但是,我认为它不适用于我的情况。
我在github上的mongo-matlab中看到了驱动程序上的其他帖子。我不会仔细查看它的详细信息,它可能会给我我的答案,但我希望在我深入了解该代码部分之前我可以得到一些建议。
谢谢