Upozornění kompilátoru (úroveň 1) C4715
'function' : Ne všechny cesty ovládacích prvků vracejí hodnotu
Zadaná funkce může potenciálně nevrací hodnotu.
Příklad
// C4715a.cpp
// compile with: /W1 /LD
int func1( int i )
{
if( i )
return 3; // C4715 warning, nothing returned if i == 0
}
Chcete-li zabránit tomuto upozornění, upravte kód tak, aby všechny cesty přiřazují funkci návratovou hodnotu:
// C4715b.cpp
// compile with: /LD
int func1( int i )
{
if( i ) return 3;
else return 0; // OK, always returns a value
}
Je možné, že váš kód může obsahovat volání funkce, která se nikdy nevrátí, jako v následujícím příkladu:
// C4715c.cpp
// compile with: /W1 /LD
void fatal()
{
}
int glue()
{
if(0)
return 1;
else if(0)
return 0;
else
fatal(); // C4715
}
Tento kód také vygeneruje upozornění, protože kompilátor neví, že fatal
se nikdy nevrátí. Chcete-li tomuto kódu zabránit v generování chybové zprávy, deklarujte fatal
pomocí __declspec(noreturn).