Maison > développement back-end > C++ > le corps du texte

Référence Const en C : `const T&` ou `T const&` – Quelle est la différence ?

Barbara Streisand
Libérer: 2024-11-14 18:23:02
original
532 Les gens l'ont consulté

Const Reference in C  : `const T&` or `T const&` – What's the Difference?

Types de référence Const en C : Placement du qualificateur 'const'

En C , il existe deux façons de déclarer des références constantes en utilisant le Qualificateur 'const' :

const Fred &arg;
Fred const &arg;
Copier après la connexion

Sémantique Différences

Sémantiquement, ces deux déclarations sont équivalentes, et le langage les considère comme du même type. Il n'y a aucune différence fonctionnelle entre passer un argument par const T& ou T const&.

Considérations sur le style

Cependant, en matière de style, il existe différentes préférences parmi les programmeurs. .

Analyse de gauche à droite

Certains programmeurs préconisent de placer le qualificatif 'const' après le type (T const&), arguant qu'il suit la règle d'analyse de droite à gauche en C . Cela garantit que lors de la lecture de la déclaration, le qualificatif « const » est appliqué au type, plutôt qu'à la référence elle-même.

Analyse de droite à gauche

D'autres, cependant, préfèrent la syntaxe const T&, arguant qu'elle se lit aussi bien de droite à gauche. Il peut être interprété comme « référence à une constante T ». De plus, placer le qualificatif « const » avant la référence empêche la déclaration accidentelle d'une constante de pointeur, telle que « T* const », qui est illégale.

Pratique courante

En pratique, les deux styles sont largement utilisés. Le style préféré par "The C Programming Language" de Stroustrup et le standard C est const T&. Cependant, le style utilisé dans « Le langage de programmation C » de K&R et dans la norme C est T const*. En fin de compte, le choix du style est une question de préférence personnelle et peut également être influencé par les conventions de codage d'organisations spécifiques.

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