共用方式為


編譯器警告 (層級 1) C4715

'function' : 並非所有控制項路徑都會傳回值

指定的函式可能無法傳回值。

範例

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

若要防止此警告,請修改程式碼,讓所有路徑將傳回值指派給函式:

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

您的程式碼可能包含永遠不會傳回之函式的呼叫,如下列範例所示:

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

此程式碼也會產生警告,因為編譯器不知道 fatal 永遠不會傳回。 若要防止此程式碼產生錯誤訊息,請使用 __declspec(noreturn) 宣告 fatal