【发布时间】:2015-02-12 22:12:56
【问题描述】:
我想定义恰好由同一类型支持的类型(例如,FirstName 和 LastName,它们都是 strings),但我希望对它们进行类型检查,这样我就不能错误地混搭它们:
> type FirstName = string;;
type FirstName = string
> type LastName = string;;
type LastName = string
> let n : FirstName = "John";;
val n : FirstName = "John"
//I wish this were caught:
> let l : LastName = n;;
val l : LastName = "John"
有没有办法在 F# 中做到这一点,而不是定义记录类型或类似的东西?
【问题讨论】:
标签: f#