【发布时间】:2010-11-07 21:17:26
【问题描述】:
我有一个名为“baseClass”的类。 从这个类我继承了一个类名“inheritedClass”(公共类inheritedClass:baseClass)
baseClass 包含一个返回HashSet<baseClass> 的公共函数。从inheritedClass调用时,返回类型显然还是HashSet<baseClass>,但我需要一个HashSet<inheritedClass>。
转换 ala (HashSet<inheritedClass>)returnValue,其中 returnValue 的类型为 HashSet<baseClass> 不起作用。
有没有办法将HashSet-Type从baseClass转换为inheritedClass,而无需手动转换每个元素?
提前致谢, 弗兰克
【问题讨论】:
-
什么? (15 个字符限制)
-
你说你想从HashMap转换为HashMap,但那是同一个类。我在这里错过了什么吗?
-
您缺少未引用的类型参数 :)
-
你可以用一个通用的基类来做到这一点,看看我的答案..
-
其次,如果可以使用泛型来完成,为什么还要增加转换开销。
标签: c# generics templates type-conversion