定义区分联合时,可以命名元组类型的元素,并在模式匹配期间使用这些名称。
type Shape = | Circle of diameter:int | Rectangle of width:int * height:int let shapeIsTenWide = function | Circle(diameter=10) | Rectangle(width=10) -> true | _ -> false
另外,命名已区分的并集的元素可以提高代码的可读性以及与C#的互操作性-提供的名称将用于属性的名称和构造函数的参数。互操作代码中默认生成的名称为“ Item”,“ Item1”,“ Item2” ...