gpt4 book ai didi

函数定义包含单元 F#

转载 作者:行者123 更新时间:2023-12-02 06:50:24 24 4
gpt4 key购买 nike

我是 f# 编程的新手,我正在定义一些要使用的辅助函数。这是其中两个:

    let GetPieceAt piece playerType file rank = { 
piece = {piece = piece; playerType = playerType} ;
place = { file= file; rank = rank}
}

let GetPieceOnRank piece rank playerType files () =
[for f in files -> GetPieceAt piece playerType f rank]

第一个函数是正确的类型:piece -> playerType -> file -> rank -> PieceAt

然而,第二个函数有:piece -> rank -> playerType -> seq -> unit -> PieceAt list

这个单位是从哪里来的?我调用它的其他函数正在获取 unit -> unit ... -> {correct return value},这会出错。

我做错了什么?

最佳答案

F# 中的

unitGetPieceOnRank 定义中的空括号 () 表示。

与 C# 不同,调用函数不需要括号。也许这些括号的位置是错误的,因为它们不是必需的,简单地删除它们仍然允许代码编译。

let GetPieceOnRank piece  rank playerType files = 
[for f in files -> GetPieceAt piece playerType f rank]

关于函数定义包含单元 F#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46000960/

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