Ich suche das C # -Äquivalent von Java final. Existiert es?
Hat C # Folgendes:
public Foo(final int bar);
Im obigen Beispiel barhandelt es sich um eine schreibgeschützte Variable, die nicht von geändert werden kann Foo(). Gibt es eine Möglichkeit, dies in C # zu tun?
Zum Beispiel, vielleicht habe ich eine lange Methode , die mit arbeiten werden x, yund zKoordinaten eines Objekts (Ints). Ich möchte absolut sicher sein, dass die Funktion diese Werte in keiner Weise ändert und dadurch die Daten beschädigt. Daher möchte ich sie schreibgeschützt erklären.
public Foo(int x, int y, int z) {
// do stuff
x++; // oops. This corrupts the data. Can this be caught at compile time?
// do more stuff, assuming x is still the original value.
}