|
|
1
8
在F#中,函数的返回值是函数中计算的最后一个表达式。因此,让我们关注以下几点:
此外,if语句具有返回值,这也是if语句中执行的最后一个值。如果If语句不是函数的返回值,则它应该具有返回类型
现在你的函数是固定的,但它真的很难看。让我们把它转换成更地道的F#。您可以使用模式匹配替换if语句,并使用递归替换while循环:
|
|
|
2
3
问题在于,如果要将if语句解析为值而不是单位,则需要“then”部分和“else”部分,这两个部分解析为相同的类型。 例如:
将生成相同的错误-表达式的类型为int,但与类型unit一起使用。 然而:
|
|
3
1
如果写得更实用,我会更漂亮。 |
|
|
4
0
这意味着
“如果”不起作用是因为
下面是有效的代码:
|
|
|
5
0
谢谢你的回答。这是当前的非功能版本。
现在我有了一个工作版本,我将尝试使它更实用,但这超出了这个问题的范围。
|
|
|
tomm · 谷歌表格-将两列相乘,复制第三列 4 年前 |
|
|
ziemsterr · 无法在SQL SELECT语句中找出此语法错误 4 年前 |
|
|
Andrés BolÃvar · AJAX请求未收到我想要的属性 4 年前 |
|
|
clarkk · 当声明向量时,(1)是什么意思? 4 年前 |
|
|
Mike C. · Bash错误[:检查文件是否存在时缺少“]” 4 年前 |
|
|
michael · 错误的脚本和语法问题 4 年前 |