Ich möchte eine Bezeichnung in F # erstellen, die eine veränderbare Variable verwendet, um einen Wert zurückzugeben. Leider setzt F # dieses Label auf einen konstanten Wert. Ändert sich der Wert des Mutable, bleibt der Wert des Labels erhalten. Ist es nicht ein bisschen inkonsequent? Gibt es eine Möglichkeit, die Kennzeichnung ("a") von der veränderbaren ("x") abhängig zu machen?Wie kann ich ein Label mit einer veränderbaren Variable in F # verknüpfen?
let mutable x = 0;
let a = x + 2; // I want not to set a to a constant value
let b two = x + two;
x <- 1;
let c = b 2;
let isConsistent = a = c;
val mutable x : int = 1
val a : int = 2
val b : two:int -> int
val c : int = 3
val isConsistent : bool = false
Wenn Sie F # lernen, warum Sie verwenden 'wandelbar '. Functional Programming zu lernen, indem ich die Ideen von prozeduralen und objektorientierten Sprachen aus meiner Sichtweise übertrage, ist eine schlechte Idee. –
Ich möchte nicht auf eigene Faust mutieren. Ich will 'a' eine Funktion sein, die x + 2 – checkThisOut
@checkThisOut zurückgibt so machen Sie es zu einer Funktion – Sehnsucht