W8028 Variable temporaire utilisée pour initialiser 'identificateur' (C++)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Erreurs et avertissements du compilateur (C++) - Index


Option de la ligne de commande pour supprimer l'avertissement :

-w-lin

En C++, une variable ou un paramètre de type référence doit se voir affecter une référence à un objet du même type.

Si les types ne sont pas identiques, la valeur est affectée à un temporaire du bon type, et l'adresse du temporaire est affectée à la variable ou au paramètre de référence.

Cet avertissement signifie que la variable ou le paramètre de référence ne désigne pas ce qui était prévu, mais une variable temporaire autrement inutilisée.

Exemple

Dans cet exemple, la fonction f requiert une référence à un entier (int), et c est un caractère (char) :

f(int&);

// ...

  char c;
  f(c);

Au lieu d'appeler f avec l'adresse de c, le compilateur génère le code équivalent au code source C++ :

int x = c;
f(x);