Maison > développement back-end > C++ > Référence Const en C : Const avant ou après le spécificateur de type ?

Référence Const en C : Const avant ou après le spécificateur de type ?

Mary-Kate Olsen
Libérer: 2024-11-15 10:52:02
original
241 Les gens l'ont consulté

Const Reference in C  : Const Before or After the Type Specifier?

Référence Const : Avant vs. Après Type-Specifier

En C , il existe une différence subtile dans la syntaxe pour déclarer une référence const :

int foo1(const Fred &arg) {
...
}
Copier après la connexion
int foo2(Fred const &arg) {
...
}
Copier après la connexion

Les deux méthodes de déclaration produisent une référence constante à un objet Fred. Cependant, le placement du mot-clé const n'a aucun impact sémantique.

Question de style

Bien que le comportement de ces déclarations soit identique, il existe des préférences stylistiques à considérer.

Certains préfèrent const T& (et const T*), citant :

  • Alignement avec le livre de Stroustrup et le standard C
  • Familiarité parmi les programmeurs C expérimentés
  • 🎜>
  • Utilisation courante dans l'industrie

D'autres privilégient T const& (et T const*), en fonction de la lisibilité :
  • Analyse cohérente de droite à gauche
  • Risque réduit d'égarer le * ou d'interpréter incorrectement T const*

Analyse de droite à gauche

Le droit à- La règle d'analyse à gauche stipule que les déclarations doivent être lues de droite à gauche. Par conséquent, const T& peut être interprété comme « une référence à un const T » ou « une référence const T ». De même, T const& peut être lu comme « une référence const à un T » ou « une référence T const ». Les deux interprétations sont grammaticalement correctes, ce qui rend le placement du mot-clé const moins impactant sur la lisibilité que certains le prétendent.

En fin de compte, le choix entre ces styles de déclaration est une question de préférence personnelle. Les deux sont syntaxiquement corrects et véhiculent la même signification.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal