F#中是否有一些模拟?就像是
let f () =
let mutable static a = 0
...
?
最佳答案
如果你脱糖 let f () = ...
至 let f = fun () -> ...
,可以放a
的声明内部定义f
, 但在函数开始之前。这将使函数关闭 a
同时保持a
本地到 f
.这样做的问题是您可能无法关闭可变变量,因此您需要使用 ref 代替:
let f =
let a = ref 0
fun () ->
....
关于f# - F# 函数中的类 C++ 静态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26233204/