【发布时间】:2010-09-10 13:58:04
【问题描述】:
根据文档,表单的枚举类型约束
: enum<underlying-type> 是“不适合常用”。它的用途是什么?
【问题讨论】:
标签: f#
根据文档,表单的枚举类型约束
: enum<underlying-type> 是“不适合常用”。它的用途是什么?
【问题讨论】:
标签: f#
首先想到的是用强类型包装器包装System.Enum 的成员:
// gets all underlying values for which an enum is defined
let definedVals<'a, 'b when 'a : enum<'b>> =
System.Enum.GetValues(typeof<'a>)
|> Seq.cast<'a>
|> Seq.map (LanguagePrimitives.EnumToValue)
let ints = definedVals<System.ConsoleColor,_>
【讨论】: