In C gibt es einen subtilen Unterschied in der Syntax für die Deklaration einer Const-Referenz:
int foo1(const Fred &arg) { ... }
int foo2(Fred const &arg) { ... }
Beide Deklarationsmethoden erzeugen eine konstante Referenz auf ein Fred-Objekt. Die Platzierung des const-Schlüsselworts hat jedoch keine semantischen Auswirkungen.
Aus Stilgründen
Obwohl das Verhalten dieser Deklarationen identisch ist, gibt es stilistische Präferenzen Bedenken Sie.
Einige bevorzugen const T& (und const T*) und zitieren:
Andere bevorzugen T const& (und T const*), basierend auf der Lesbarkeit:
Rechts-nach-Links-Parsing
Das Rechts-nach- Die linke Parsing-Regel besagt, dass Deklarationen von rechts nach links gelesen werden sollten. Daher kann const T& als „eine Referenz auf eine const T“ oder „eine const T-Referenz“ interpretiert werden. Ebenso kann T const& als „eine konstante Referenz auf ein T“ oder „eine T-konstante Referenz“ gelesen werden. Beide Interpretationen sind grammatikalisch korrekt, sodass die Platzierung des Schlüsselworts const weniger Einfluss auf die Lesbarkeit hat, als manche behaupten.
Letztendlich ist die Wahl zwischen diesen Deklarationsstilen eine Frage der persönlichen Präferenz. Beide sind syntaktisch korrekt und vermitteln die gleiche Bedeutung.
Das obige ist der detaillierte Inhalt vonConst-Referenz in C: Const vor oder nach dem Typspezifizierer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!