开始学习F#。想要制作一个简单的程序,告诉我它在命令行参数中找到了什么。我有:F#noob:匹配命令行参数
[<EntryPoint>]
let main argv =
printfn "%A" argv
match argv with
| [] -> 42
| _ -> 43
但是,这给出了错误。如果我的argv悬停在我看到:
val argv : string[]
这是我本来期望(字符串列表)。但是第一场比赛表达有错误:
Error 1 This expression was expected to have type string [] but here has type 'a list
基本上我只是想匹配空参数列表(字符串列表为空)。什么是正确的方式来做到这一点?
我要补充:我不只是要一个解决方案(虽然这将是很好)。我也想了解编译器在这里寻找什么,我没有给它。
是的!这是令人困惑的!似乎也不一致,但谢谢!您的解决方案的工作 – user1443098
@ user1443098不要忘记,以纪念答案(只需点击绿色的勾);) –
@ user1443098:同意。从某种意义上说它是一致的,但可能并不是你期望的那样。我为答案增加了更多背景。 – scrwtp