gpt4 book ai didi

f# - 是否有像 Option<'a> 这样的类型可以在 None 中保存字符串?

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

我需要提供带有 None 结果的解释性消息,所以基本上我希望我能够执行以下操作:

let func x y z = if x y then Some(z) else None("It didn't work out, because blah blah blah")

这有标准类型吗?

如果不是,我可以为我自己的类型使用相同的 Some 和 None 名称吗?

更新:

我尝试创建自己的工会:
type CanBe<'a> =
| Some of 'a
| None of string

它似乎有效,不是吗?

最佳答案

正如乔恩·珀迪 (Jon Purdy) 所指出的那样,您可以使用一种类型来实现这一点,但最好使用更具体的内容。幸运的是,实现起来相当简单:

type Result<'a> =
| Success of 'a
| Failure of string

let func x y z =
if x y then Success(z)
else Failure("It didn't work out, because blah blah blah")

关于f# - 是否有像 Option<'a> 这样的类型可以在 None 中保存字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18669636/

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