Compilerwarnung (Stufe 1) C4715

Aktualisiert: November 2007

Fehlermeldung

'Funktion': Nicht alle Steuerelementpfade geben einen Wert zurück
'function' : not all control paths return a value

Die angegebene Funktion kann unter gewissen Umständen kein Ergebnis zurückgeben.

Beispiel

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

Um diese Warnung zu verhindern, ändern Sie den Code so, dass der Funktion durch alle Pfade ein Rückgabewert zugewiesen wird:

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

Der Code kann aber auch den Aufruf einer Funktion enthalten, durch die niemals ein Wert zurückgegeben wird. Siehe folgendes Beispiel:

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

Dieser Code generiert ebenfalls eine Warnung, da der Compiler nicht weiß, dass fatal niemals zurückgegeben wird. Um zu verhindern, dass dieser Code eine Fehlermeldung erzeugt, deklarieren Sie fatal unter Verwendung von __declspec(noreturn).