Maison > développement back-end > C++ > Quand les références Const Rvalue sont-elles utiles en C ?

Quand les références Const Rvalue sont-elles utiles en C ?

Patricia Arquette
Libérer: 2024-12-05 21:15:14
original
176 Les gens l'ont consulté

When Are Const Rvalue References Useful in C  ?

Les références Rvalue à Const sont-elles toujours utiles ?

Dans le domaine de la programmation C, une question intrigante se pose : les références rvalue aux types de classe const servent-elles à quelque chose ? Bien qu'on puisse initialement supposer qu'ils sont redondants, un examen plus approfondi révèle qu'ils ont une utilité occasionnelle.

Le projet de norme de langage C 0x fournit un exemple de leur application. Deux modèles de fonctions, ref et cref, sont définis comme suit :

template <class T> void ref(const T&&) = delete;
template <class T> void cref(const T&&) = delete;
Copier après la connexion

Ces surcharges ont un objectif essentiel : empêcher les autres fonctions ref(T&) et cref(const T&) d'être invoquées avec des rvalues. Cela serait possible si les références rvalue à const n'étaient pas définies.

Mise à jour :

Après un examen plus approfondi de la norme officielle C (N3290), les mêmes modèles de fonction apparaissent dans la section 20.8 [function.objects]/p2. De plus, la version post-C 11 la plus récente (N3485) inclut également ces modèles au même endroit.

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