【发布时间】:2013-04-02 17:04:28
【问题描述】:
有很多关于如何为泛型类型创建枚举约束的问题。 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# 答案。
【问题讨论】: