다음을 통해 공유


컴파일러 경고(수준 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 합니다.