我有一个通用类定义为:
public class MyClass<T> {
// some properties
}
public class CustomClass {
// some properties
}
我有三个这样的类的实例定义如下:
MyClass<int> instance1 = new MyClass<int>();
MyClass<string> instance2 = new MyClass<string>();
MyClass<CustomClass> instance3 = new MyClass<CustomClass>();
另外,我必须存储一些原始类型
string s1 = "My string";
int i1 = 5;
如何创建可包含所有上述变量的单个列表?
答案 0 :(得分:6)
如果您可以为这三种类型中的每种类型找到一个通用界面并创建它,那么您将能够创建一个可以占用所有三种类型的List<IMyClass>
。
您可以阅读here以了解有关接口的更多信息。
只要MyClass<T>
实现了该接口,那么列表就会全部接受它们。
答案 1 :(得分:3)
怎么样:
var myList = new List<object> {instance1, instance2, instance3};