C# 定义接受泛型类的任何实现的集合
我有一个通用的抽象类图。如何定义一个接受抽象类的任何实现的集合?我尝试了以下方法,但没有成功: 公共列表图=新列表 公共列表图=新列表C# 定义接受泛型类的任何实现的集合,c#,generics,C#,Generics,我有一个通用的抽象类图。如何定义一个接受抽象类的任何实现的集合?我尝试了以下方法,但没有成功: 公共列表图=新列表 公共列表图=新列表 谢谢。像这样的情况通常需要创建一个非泛型基类,泛型类从中派生: public abstract class Plot { // Put anything which doesn't need T here } public class Plot<T> : Plot { } 然后您可以创建一个列表。像这样的情况通常需要创建一个非泛型基类,泛
谢谢。像这样的情况通常需要创建一个非泛型基类,泛型类从中派生:
public abstract class Plot
{
// Put anything which doesn't need T here
}
public class Plot<T> : Plot
{
}
然后您可以创建一个列表。像这样的情况通常需要创建一个非泛型基类,泛型类从中派生:
public abstract class Plot
{
// Put anything which doesn't need T here
}
public class Plot<T> : Plot
{
}
然后你可以创建一个列表。class PlotList:List{}你不能创建这个集合,因为C中的泛型是在编译时定义的。class PlotList:List{}你不能创建这个集合,因为C中的泛型是在编译时定义的。我自己在我完成的许多项目中都使用过这种技术。我在Tim McCarthy的《领域驱动设计》一书中首次发现了这一点。我自己也在我做过的许多项目中使用过这种技术。我在Tim McCarthy的《领域驱动设计》一书中首次发现了这一点。