gpt4 book ai didi

f# - 如何一般地删除 F# 度量单位

转载 作者:行者123 更新时间:2023-12-01 10:16:27 24 4
gpt4 key购买 nike

我有一些数据操作代码,最后会输出 csv。

我开始升级它以在任何地方添加度量单位,但现在我的 csv 函数有问题:

val WriteCSV : string -> 'a list array -> 'b list -> string -> unit

(参数为文件名、列数组、列标题、分隔符)

我之前将 [|s;x;y|] 发送到 WriteCSV 的地方,现在有问题,因为我无法发送 [|skm;毫米;嗯|]。

我尝试编写一个通用删除度量单位的函数,但它不起作用。
let removeUnit (n:float<_>) = n/1.0<_>

我的问题是:
  • 为什么不起作用?
  • 它可以工作吗?
  • 有没有其他方法可以解决这个特定问题?
  • 最佳答案

    如果我的问题是正确的,将其转换为“纯”浮点数会删除该单元。
    例如:

    [<Measure>] type m
    [<Measure>] type km

    let removeUnit (x:float<_>) =
    float x

    let foo = removeUnit 2.6<m>
    let foo2 = removeUnit 2.1<km>

    val removeUnit : float<'u> -> float

    关于f# - 如何一般地删除 F# 度量单位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/412459/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com