gpt4 book ai didi

c# - 从类型参数设置的类型参数

转载 作者:行者123 更新时间:2023-11-30 14:18:14 25 4
gpt4 key购买 nike

如何将我的参数转换为正确的类型声明。 IE。我如何从 type 转到 T 以下

class Foo<T>
{
Foo<??> MakeFoo(Type type)
{
return new Foo<??>();
}

Void Get(T aFoo)
{
...
}
}

最佳答案

你不能。

通用参数由编译器使用和应用,而 Type 是 Reflections 的一部分,旨在在运行时处理类型信息。因此,如果您只有 System.Type,您就无法定义编译器应该使用哪种类型。

但是你可以做相反的事情:

public void Foo<T>()
{
Type t = typeof(T);
}

因此,如果您真的不需要使用 Type 作为参数,您可以执行以下操作:

Foo<FooParam> MakeFoo<FooParam>()
{
return new Foo<FooParam>();
}

关于c# - 从类型参数设置的类型参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4849785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com