这是一个愚蠢的问题。我已经读了几本关于F#的书,找不到什么可以解释您何时放进去;发表声明后,我也无法在阅读中找到规律。您何时以双分号结束声明?

最佳答案

在不应该与OCaml兼容的非交互式F#代码中,您永远不需要双分号。在OCaml兼容模式下,您可以在顶级函数声明的末尾使用它(在最新版本中,可以通过使用带有.ml扩展名的文件或在顶部添加#light "off"来切换到此模式)。

如果您在Visual Studio中使用命令行fsi.exe工具或F#Interactive,则将使用;;结束F#的当前输入。

当我在StackOverflow(以及my book的代码示例)中将代码示例发布到此处时,当我还想显示在F#交互式中计算表达式的结果时,我在列表中使用;;:

  • 来自F#交互式的列表
    > "Hello" + " world!";;
    val it : string = "Hello world!"
    > 1 + 2;;
    val it : int = 3
    
  • 标准F#源代码
    let n = 1 + 2
    printf "Hello world!"
    

  • 有时,将输出显示为 list 的一部分也很有用,所以我发现此表示形式非常有用,但我从未在任何地方进行解释,因此您提出来的意思很好!

    关于f# - 什么时候在F#中放入双分号?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2669299/

    10-10 13:29