gpt4 book ai didi

F# 不完整的结构化构造

转载 作者:行者123 更新时间:2023-12-03 14:53:25 28 4
gpt4 key购买 nike

我最近开始学习 F#,今天我遇到了无法摆脱的错误。我有以下代码:

open System

[<EntryPoint>]
let main argv =

type BinaryTree =
| Node of int * BinaryTree * BinaryTree
| Empty

let rec printInOrder tree =
match tree with
| Node (data, left, right)
-> printInOrder left
printfn "Node %d" data
printInOrder right
| Empty
-> ()

let binTree =
Node(2,
Node(1, Empty, Empty),
Node(4,
Node(3, Empty, Empty),
Node(5, Empty, Empty)
)
)

printInOrder binTree
0

使用此代码,我收到以下错误:

Incomplete structured construct at or before this point in binding



不幸的是,我不知道如何解决它。这是编程 F# 3.0 一书中的代码示例。

我非常感谢任何可以帮助我了解如何在 future 避免此类错误的答案。

最佳答案

您需要在适当的上下文中(在函数之外)定义类型和函数。

open System 

type BinaryTree =
| Node of int * BinaryTree * BinaryTree
| Empty

let rec printInOrder tree =
match tree with
| Node (data, left, right)
-> printInOrder left
printfn "Node %d" data
printInOrder right
| Empty
-> ()

let binTree =
Node(2,
Node(1, Empty, Empty),
Node(4,
Node(3, Empty, Empty),
Node(5, Empty, Empty)
)
)

[<EntryPoint>]
let main argv =
printInOrder binTree
0

关于F# 不完整的结构化构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20009373/

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