체력이 0 미만일때 200 포인트를 얻는 코드를 만들어 보겠습니다.
int hp = 5;
int GetPoint()
{
if(hp < 1)
{
return 200;
}
**에러 발생!**
}
반환타입과 return 결과의 타입을 맞췄는데도 에러가 발생하는 것을 볼 수 있습니다.
이는 hp 가 0미만이라면 return 200 이 실행 되지만
hp 가 1이상이라면 return 하는 부분이 없어서 그렇습니다.
따라서 if 문 조건이 안되더라도 기본적으로 실행될 return 을 준비해두어야 합니다.
int hp = 5;
int GetPoint()
{
if(hp < 1)
{
return 200;
}
**return 0; <- 기본 return 값 설정**
}
각 return 의 타입은 같아야 합니다.