if문에서 누락되는 return

체력이 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 의 결과물 타입

각 return 의 타입은 같아야 합니다.

CleanShot 2023-07-11 at 03.59.19@2x.png

CleanShot 2023-07-11 at 03.59.19@2x.png