我需要在F#中创建一个具有键值对且在范围内是全局的集合。
答案 0 :(得分:7)
你可以这样做:
[<AutoOpen>]
module Globals =
let map = System.Collections.Generic.Dictionary<_,_>()
然后在整个程序中使用它不合格:
map.Add(1, "a")
map.Add(2, "b")
map |> Seq.iter (fun (KeyValue(k, v)) -> printfn "Key: %d, Value: %s" k v)
答案 1 :(得分:4)
取决于你正在做什么样的项目,最好的方法可能就是在模块中声明它:
module GlobalVals =
let myCollection = .... // whatever
您可以将其与
一起使用GlobalVals.myCollection...