1
6
您可能想要创建一个接口,并让您的泛型类实现它。.NET编译器认为MyGenericClass<int>和MyGenericClass<string>是完全不同的类。 这将允许您执行如下操作:
您还可以使用共享的基类:
最后,您可以尝试向方法中添加第二个类型参数:
(我不确定最后一个……我没有现成的编译器来检查它) 见: http://msdn.microsoft.com/en-us/library/aa479859.aspx#fundamentals_topic12 |
2
4
|
3
2
我认为你让事情变得比需要的复杂得多。退一步来解决实际问题,而不是试图解决一些完全不必要的涉及约束的问题。这看起来非常简单:
你想要一个
|
4
1
如果是我,我可能会创建一个接口,让“MyGenericClass”实现该接口,然后在方法签名的“Where”中使用该接口。 |
5
1
我同意这里的大多数帖子——提供一个界面通常是最好的方法。
然而,如果
不幸的是,这要求调用者也提供MyGenericClass的泛型类型,但是如果不能更改“MyGenericClass”,它将正确编译和运行。 |
Glory Raj · 有什么方法可以使这两个块具有共同的功能吗 2 年前 |
milczi · Swift通用无强制展开向下投射 6 年前 |
bugs · Typescript-泛型类型扩展自身 6 年前 |
John Bustos · C#通用工厂模式,不说明通用工厂模式的类型 6 年前 |
Blankdud · 具有默认数据的通用对象创建方法 6 年前 |
Tim Hutchison · 从泛型对象列表中读取泛型值 6 年前 |