Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在MATLAB中调用.NET泛型类的静态方法?_C#_.net_Matlab_Generics - Fatal编程技术网

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

C# 在MATLAB中调用.NET泛型类的静态方法?,c#,.net,matlab,generics,C#,.net,Matlab,Generics,如何在MATLAB中调用.NET泛型类的静态方法 例如,如何调用下面显示的静态方法Create public class A<T> { internal A() { } public static A<T> Create() { return new A<T>(); } } 公共A类{ 内部A(){ } publicstaticacreate(){ 返回新的A(); } } 讨论了调用泛型类的

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

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

public class A<T> {

    internal A() {      
    }

    public static A<T> Create() {
        return new A<T>();
    }
}
公共A类{
内部A(){
}
publicstaticacreate(){
返回新的A();
}
}

讨论了调用泛型类的静态泛型方法,但没有说明如何调用泛型类的静态非泛型方法

在你的链接上,它说:

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

看来你应该能够做到:

genClsDef = NET.GenericClass('A','System.Double');
ret = NET.invokeGenericMethod(genClsDef,'A','System.Double');

以下代码应可用于调用泛型非静态类的静态方法:

c = NET.createGeneric('A',{'System.Double'});
d = c.Create()

NET.GenericClass返回一个NET.GenericClass,它不公开泛型类的方法。@马克-是的,我想可能是这样。我删除了直接调用并添加了invoke callNET。invokeGenericMethod也不起作用。这不是一个通用方法。这可能会有所帮助,它使用COM接口,谢谢。我当然希望这不是唯一的办法。