【发布时间】:2016-01-06 20:17:21
【问题描述】:
我意识到你可以用单位的维度来表达关系,比如
[<Measure>] type cc = cm^3
并在以后执行有意义的计算。
给定一些度量单位类型,
[<Measure>] type m
是否可以在与另一个单位数量的关系中定义一个单位?例如,
// doesn't compile
[<Measure>] type mm = 0.001<m>
// later
let length = 500.0<mm>
let length2 = 0.5<m>
printfn "%A" (length = length2) // prints true
【问题讨论】:
-
不是一个简单的方法,但你可以定义
mm和m然后一个类型安全的转换函数。 -
大相关:stackoverflow.com/questions/13822066/…反正不会有隐含转换。在 cmets 中,也有一些关于
kilo(或milli)作为单独计量单位的争论。