F#函数,如何真正起作用

时间:2018-12-31 12:07:04

标签: f#

我有这样的功能。

.font_arial_36 {
    font-family:Arial;
    font-size:36px;
}

.a_div_test extends font_arial_36 {
    width:300px;
    max-width:350px;
}

这是我到目前为止所了解的: “ fun c-> c + c”是“ fun a b”的第一个参数,而“ 5”是第二个参数。 “ let d”是一种接受“ a”和“ b”并返回结果的函数。 但是如果有人可以解释到底发生了什么:

<div class="font_arial_36 a_div_test"></div>

1 个答案:

答案 0 :(得分:1)

in在此处用作verbose syntax的一部分。您可以使用轻量级语法重写它,以使其更具可读性。就像这样:

fun a b =
    let d = a 10
    d - 4 * b
a作为参数调用

10,并将结果分配给d。稍后d - 4 * b被计算并从函数返回。

例如,您的afun c -> c + c,因此用10调用它会返回20

20 - 4 * 5 = 0,因此将c设置为0,而x将是0 - 6 = -6

来自F#交互式:

> let c = (fun a b -> let d = a 10 in d - 4*b) (fun c -> c + c) 5;;
val c : int = 0