我需要调用一个返回一些我不需要的值的函数.通常情况下,我只是管道ignore.但是如果返回的值是IDisposable什么呢?
ignore操作员是否负责处理传递的参数?从它的源代码,看起来不是:
[<CompiledName("Ignore")>]
let inline ignore _ = ()
Run Code Online (Sandbox Code Playgroud)
所以为了这个目的,use __ = someFunc ()我使用这个函数而不是写作:
let inline dispose (x : #IDisposable) = x.Dispose()
// usage example
someFunc () |> dispose
Run Code Online (Sandbox Code Playgroud)
我想知道,这是正确的方法,或者可能已经有这样的内置运营商?或者只是使用它会ignore好吗?
小智 5
我会用using.
using (someFunc ()) ignore
Run Code Online (Sandbox Code Playgroud)
另一种选择是use语言结构而不是函数.
use x = someFunc()
()
Run Code Online (Sandbox Code Playgroud)