定义一个F#函数并避免返回值

时间:2013-03-10 01:16:31

标签: f#

定义一个函数,该函数具有一个类型为string的参数,该参数显示在控制台上。调用传递消息的函数。确保该函数忽略任何返回值

open System    
let NoReturnFunction msg =
    Console.WriteLine(string(msg))


NoReturnFunction "Hello World"

我遇到了如何避免函数返回值的问题

2 个答案:

答案 0 :(得分:8)

在这种情况下,没有工作要做,因为WriteLine方法不返回任何值。这是void返回功能。通常,忽略F#中的返回值的方法是使用ignore函数。

1 + 2 |> ignore 

您的代码示例中有几个小的挑选。首先,您只需键入参数即可避免转换为string。在F#中,使用printfn函数代替Console.WriteLine

更加惯用
let NoReturnFunction (msg : string) = 
    printfn "%s" msg 

答案 1 :(得分:0)

为了完整起见,您还可以让F#推断参数类型和返回类型 - 如下所示:

let NoReturnFunction st = printfn "%s" st

这推断出s的类型和NoReturnFunction的返回类型(在这种情况下是单位)。