Wenn ich von Java
komme, bin ich das gewohnt:
Ich bin jedoch kürzlich zu C++
gewechselt und sehe stattdessen viel davon:
Warum nicht das? Wird das nicht empfohlen?
%Vor% Es ist genau dasselbe. Wenn Sie in Java Ihren Parameter c
anstelle von color
benannt hätten, hätten Sie keine Spiegelung und Sie könnten einfach
Das this
in Java (oder C ++ in diesem Fall) wird nur benötigt, um genau anzugeben, auf welches color
Sie sich beziehen: die Elementvariable oder die lokale Variable.
Sie müssen this
nicht verwenden, da es keinen Konflikt zwischen der lokalen Variable und der Mitgliedsvariablen gibt und keine Felder ausgeblendet sind. Im Allgemeinen möchten Sie nicht, dass dieser Konflikt überhaupt auftritt, indem Sie nicht die gleiche Variable wie einen Konstruktorparameter haben, sondern auch als lokale Variable (trotz so vieler Bücher, die Sie genau das lehren).
Ich finde, dass dies viel flüssiger ist (und auch lesbarer, auch wenn Sie keinen Hintergrund aus einer bestimmten Sprache haben):
Tags und Links c++ getter-setter