我尝试将泛型类型传递给sub,但得到错误。
我用基类约束然后传递子类而不工作,我被误解了吗?
主:
Private Sub GenericTypeTest_Load
Dim tA As New TypeA
Dim tCon As New TypeContainer(of TypeA)
subTest(tCon) 'error here
End Sub
类别:
Public Class TypeBase
End Class
Public Class TypeA : Inherits TypeBase
End Class
Public Class TypeContainer(of T As {TypeBase, New})
End Class
错误讯息:
Type TypeContainer(Of TypeA)无法转换为TypeContainer(Of TypeBase)
哦,谢谢你的帮助,抱歉我的英文和电话排版不好。
答案 0 :(得分:0)
TypeA
继承TypeBase
这一事实并不意味着TypeContainer(Of TypeA)
继承TypeContainer(Of TypeBase)
。您只能将参数传递给subTest
,即继承或实现参数的类型。
显示subTest
的声明,也许我可以更具体。