Avertissement du compilateur (niveau 1) C4172
renvoi de l’adresse de la variable locale ou temporaire
Une fonction retourne l’adresse d’une variable locale ou d’un objet temporaire. Les variables locales et les objets temporaires sont détruits lorsqu’une fonction retourne, de sorte que l’adresse retournée n’est pas valide.
Remaniez la fonction afin qu’elle ne retourne pas l’adresse d’un objet local.
L’exemple suivant génère l’erreur C4172 :
// C4172.cpp
// compile with: /W1 /LD
float f = 10;
const double& bar() {
// try the following line instead
// const float& bar() {
return f; // C4172
}