F# 类型缩写
示例
类型缩写允许您在现有类型上创建别名,以赋予它们更有意义的含义。
//名称是字符串的别名 type Name = string //PhoneNumber是字符串的别名 type PhoneNumber = string
然后,您可以像使用其他任何类型一样使用别名:
//使用别名创建记录类型
type Contact = {
Name : Name
Phone : PhoneNumber }
//创建一个记录实例
//我们可以分配一个字符串,因为Name和PhoneNumber只是字符串类型的别名
let c = {
Name = "Foo"
Phone = "00 000 000" }
printfn "%A" c
//输出结果
// {Name = "Foo";
// Phone = "00 000 000";}请注意,别名不会检查类型一致性。这意味着可以将针对同一类型的两个别名彼此分配:
let c = {
Name = "Foo"
Phone = "00 000 000" }
let d = {
Name = c.Phone
Phone =c.Name}
printfn "%A" d
//输出结果
// {Name = "00 000 000";
// Phone = "Foo";}