Megosztás a következőn keresztül:


Fordító figyelmeztetés (1. szint) C4715

"függvény" : nem minden vezérlőútvonal ad vissza értéket

Megjegyzések

A megadott függvény valószínűleg nem tud értéket visszaadni.

Example

Az alábbi példa c4715-öt hoz létre:

// C4715a.cpp
// compile with: /W1 /LD
int func1( int i )
{
   if( i )
   return 3;  // C4715 warning, nothing returned if i == 0
}

A figyelmeztetés elkerülése érdekében módosítsa a kódot úgy, hogy az összes elérési út visszatérési értéket rendeljen a függvényhez:

// C4715b.cpp
// compile with: /LD
int func1( int i )
{
   if( i ) return 3;
   else return 0;     // OK, always returns a value
}

Lehetséges, hogy a kód olyan függvény hívását tartalmazza, amely soha nem tér vissza, ahogy az alábbi példában is látható:

// C4715c.cpp
// compile with: /W1 /LD
void fatal()
{
}
int glue()
{
   if(0)
      return 1;
   else if(0)
      return 0;
   else
      fatal();   // C4715
}

Ez a kód figyelmeztetést is generál, mert a fordító nem tudja, hogy ez fatal soha nem tér vissza. Ha meg szeretné akadályozni, hogy a kód hibaüzenetet generáljon, deklaráljon fatal__declspec(noreturn) használatával.