gpt4 book ai didi

c# - F# 中的度量单位 "Type"

转载 作者:太空宇宙 更新时间:2023-11-03 22:17:54 27 4
gpt4 key购买 nike

我正在用 F# 编写测量单位的转换函数。有关值的信息来自 ASP.NET Web 应用程序。

我正在创建的函数定义如下:

let convert (x:float<_>) (toType : string) =
// Do conversion here.

我遇到的第一个问题涉及到 toType : string 定义。有什么办法可以让它接受 float<_> 吗?类型...特别是来自网络应用程序? (我知道它是基于 Andrew Kennedy's excellent articles 的 CLR 的一部分,但我不知道如何在函数中一般地定义它。

感谢您提供的任何帮助。

最佳答案

如果您只想能够读取“2.0 ft”和“5.0 m”,那么

  • 您应该编写代码来解析字符串并执行一些条件逻辑(例如,如果“ft”然后变成 float<ft> 或其他)

  • 一旦将数据转换为 F# 类型系统,您就可以以类型安全的方式执行操作

这是每个想要从外部世界获取强类型数据的应用程序的典型特征;有一个输入组件必须解析和验证输入并将其存储到强类型数据结构中,但程序以后可以使用该数据。

(在任何库中都没有神奇的解析器/输入验证器,你只需为你的数据类型做。)

关于c# - F# 中的度量单位 "Type",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4380770/

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