27 votes

Est-il une différence entre des références universelles et de transfert des références?

Un argument de cette fonction aura pour effet de lier à une rvalue reference:

void f(int && i);

Cependant, un argument de cette fonction se lier soit à une rvalue ou une lvalue de référence:

template <typename T>  
void f(T && t);

J'ai souvent entendu cette visée comme une référence universelle.
J'ai également entendu qu'on appelle un transfert de référence.
Veulent-ils dire la même chose?
Est-il seulement d'un transfert de référence si le corps de la fonction d'appels std::forward?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X