Ich habe eine Frage zur Manipulation einer Karte als globale Variable. Am Anfang meiner Datei, habe ich:
module IntOrd = struct type t = int let compare = ( - ) end
module IntMap = Map.Make( IntOrd )
Dann möchte ich eine globale Variable deklarieren, indem ich let variables = IntMap.empty
entonces variables
wird in einigen Funktionen in dieser Datei geändert. Zum Beispiel, in einer Funktion let analyze (p: s_program) : unit =
Ich möchte ausfüllen variables
mit einigen Werten in p
. Aber ich sehe nicht, wie man es tun, weil es scheint, dass ich nicht ändern konnte variables
mehr; IntMap.add : key -> 'a -> 'a t -> 'a t
würde ebenfalls nicht funktionieren, da es die Werte nicht direkt ändert.
Muss ich diese globale Variable als Referenz angeben?
Kann jemand helfen? Ich danke Ihnen sehr