关于如何为泛型类型创建枚举约束有很多问题。ex1 , ex2 , ex3等
我很好奇是否有可能更进一步,只需要某些本地定义的枚举作为通用方法的约束。
目前,我正在使用建议的解决方案,即在泛型类型上使用结构、Iconvertible 约束来处理允许泛型类型的枚举。在 vb.net 中看起来像这样:
Private Function MyMethod(Of T As {Structure, IConvertible})(ByVal myEnum As T) As Object
'...
End Function
现在,如果我想进一步将约束强制限制在我的两个枚举中会发生什么,定义如下:
Public Enum EnumOne
Height
End Enum
Public Enum EnumTwo
Width
End Enum
我还没有弄清楚语法。
虽然我在 VB.net 中编程,但也欢迎 C# 答案。