class Word<T>{
public string Name{get; set;}
public bool Compare(T t1, T t2){ ... }
}
若要定义一个Dictionay
private Dictionary NameList<string, Word>; 是不可以的。想来原因是Word类型并没有确定。
变通的办法是为class Word定义一个超类WordBase, 去除其中泛型相关的方法和属性。
class WordBase{
public string Name{get; set;}
public bool Compare(T t1, T t2){ ... }
}
class Word<T>:WordBase{}
本文探讨了在使用泛型类Word时遇到的问题:直接使用泛型类作为Dictionary值类型时,由于类型未确定导致的编译错误。文中提出了一种解决方案,即通过创建一个非泛型基类WordBase来解决这一问题。
3606

被折叠的 条评论
为什么被折叠?



