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

Est-ce que « ceci » est un pointeur ou une référence en C ?

Susan Sarandon
Libérer: 2024-11-25 13:57:11
original
567 Les gens l'ont consulté

Is `this` a Pointer or a Reference in C  ?

Pourquoi « ceci » est un pointeur et non une référence

La notion de « ceci » en C évoque généralement la confusion, comme certains le perçoivent comme un pointeur tandis que d’autres le voient comme une référence. Le contexte historique met en lumière cette apparente contradiction.

Au départ, C ne comportait que des pointeurs. Lorsque la surcharge des opérateurs a été introduite, les références sont devenues une nécessité pour assurer la cohérence. Cependant, "this" était déjà établi comme pointeur dans les versions antérieures.

Si "this" était une référence, y accéder nécessiterait l'opérateur "&", ce qui donnerait "&this". En revanche, la syntaxe des auto-affectations utilisant des pointeurs, « *this », semble plus succincte. Ainsi, la compatibilité ascendante du fait que « ceci » soit un pointeur l'emporte sur les avantages potentiels d'en faire une référence.

Bien que les références offrent des avantages en termes de sécurité et de sécurité, la convention établie selon laquelle « ceci » est un pointeur reste inchangé en raison de l'accent mis par la communauté C sur la compatibilité ascendante.

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