Der Pre / Post-Inkrement / Dekrement-Operator ( ++
und --
) ist eine ziemlich standardmäßige Programmiersprachen-Syntax (zumindest für prozedurale und objektorientierte Sprachen).
Warum unterstützt Ruby sie nicht? Ich verstehe, dass Sie mit +=
und dasselbe erreichen können -=
, aber es scheint seltsamerweise willkürlich, so etwas auszuschließen, zumal es so prägnant und konventionell ist.
Beispiel:
i = 0 #=> 0
i += 1 #=> 1
i #=> 1
i++ #=> expect 2, but as far as I can tell,
#=> irb ignores the second + and waits for a second number to add to i
Ich verstehe, Fixnum
ist unveränderlich, aber wenn +=
man nur ein neues instanziieren Fixnum
und einstellen kann, warum nicht das Gleiche für ++
?
Ist die Konsistenz bei Aufgaben, die den =
Charakter enthalten, der einzige Grund dafür, oder fehlt mir etwas?
+=
Operator keine Vorinkrementierung durchführen . Versuchen Sie in CI, ++
/ --
nur innerhalb von Bedingungen zu verwenden, und bevorzugen Sie das wörtlichere +=
/ -=
in einer grundlegenden Anweisung. Wahrscheinlich, weil ich Python gelernt habe (allerdings lange nach C ...)