C# 如何声明一个在tuntime中获得类型的类型,如元组 请考虑元组< /代码>声明: public static class Tuple { public static Tuple<T1> Create<T1>(T1 item1); public static Tuple<T1, T2> Create<T1, T2>(T1 item1, T2 item2); public static Tuple<T1, T2, T3> Create<T1, T2, T3>(T1 item1, T2 item2, T3 item3); ....
现在我想声明我的类型,比如C# 如何声明一个在tuntime中获得类型的类型,如元组 请考虑元组< /代码>声明: public static class Tuple { public static Tuple<T1> Create<T1>(T1 item1); public static Tuple<T1, T2> Create<T1, T2>(T1 item1, T2 item2); public static Tuple<T1, T2, T3> Create<T1, T2, T3>(T1 item1, T2 item2, T3 item3); ....,c#,generics,C#,Generics,现在我想声明我的类型,比如Tuple,它可以在运行时获取类型(类) public static class Nime { public static Nime<T1> Create<T1>(T1 item1); } 公共静态类Nime { 公共静态Nime创建(T1项1); } 但我有一个错误: 非泛型类型“Nime”不能与类型参数一起使用 如何声明一个类,比如Tuple,在运行时获取类型 谢谢像这样的东西会有用的: public class Nime<
Tuple
,它可以在运行时获取类型(类)
public static class Nime
{
public static Nime<T1> Create<T1>(T1 item1);
}
公共静态类Nime
{
公共静态Nime创建(T1项1);
}
但我有一个错误:
非泛型类型“Nime”不能与类型参数一起使用
如何声明一个类,比如Tuple
,在运行时获取类型
谢谢像这样的东西会有用的:
public class Nime<T1>
{
public static Nime<T1> Create(T1 item1)
{
return new Nime<T1>(item1);
}
public T1 Item { get; set; }
private Nime(T1 item)
{
Item = item;
}
}
公共类Nime
{
公共静态Nime创建(T1项1)
{
返回新Nime(第1项);
}
公共T1项{get;set;}
二等兵尼姆(T1项)
{
项目=项目;
}
}
然后您可以这样使用它:
Tuple<Mycls> a = new Tuple<Mycls>(new Mycls());
var n = Nime<string>.Create("foo");
Console.WriteLine(n.Item);
var n=Nime.Create(“foo”);
控制台写入线(n.项);
当然,输出是“foo”。类似的东西可以工作:
public class Nime<T1>
{
public static Nime<T1> Create(T1 item1)
{
return new Nime<T1>(item1);
}
public T1 Item { get; set; }
private Nime(T1 item)
{
Item = item;
}
}
公共类Nime
{
公共静态Nime创建(T1项1)
{
返回新Nime(第1项);
}
公共T1项{get;set;}
二等兵尼姆(T1项)
{
项目=项目;
}
}
然后您可以这样使用它:
Tuple<Mycls> a = new Tuple<Mycls>(new Mycls());
var n = Nime<string>.Create("foo");
Console.WriteLine(n.Item);
var n=Nime.Create(“foo”);
控制台写入线(n.项);
输出当然是“foo”。我想我知道你想要模仿什么 您需要以下内容:
class Nime<T> { ... }
static class Nime
{
public static Nime<T> Create<T>(T t) { return new Nime<T> { ... } }
}
我想我知道你想模仿什么 您需要以下内容:
class Nime<T> { ... }
static class Nime
{
public static Nime<T> Create<T>(T t) { return new Nime<T> { ... } }
}