2

如何在 MATLAB 中调用 .NET 泛型类的静态方法?

例如,我将如何调用Create下面显示的静态方法?

public class A<T> {

    internal A() {      
    }

    public static A<T> Create() {
        return new A<T>();
    }
}

http://www.mathworks.com/help/techdoc/matlab_external/brz16z_-1.html谈论调用泛型类的静态泛型方法,但它没有显示如何调用泛型的静态非泛型方法班级。

4

2 回答 2

2

所以在你拥有的那个链接上,它说:

调用泛型类的泛型函数 如果泛型方法使用与泛型类相同的参数化类型,则可以直接在类对象上调用该函数。如果泛型使用与类不同的类型,请使用 NET.invokeGenericMethod 函数。

所以看起来你应该能够做到:

genClsDef = NET.GenericClass('A','System.Double');
ret = NET.invokeGenericMethod(genClsDef,'A','System.Double');
于 2012-05-15T19:46:35.903 回答
0

以下代码应该可以调用通用非静态类的静态方法:

c = NET.createGeneric('A',{'System.Double'});
d = c.Create()
于 2018-08-13T13:08:09.447 回答