STUDY/C++
[C++] 얼리 리턴?
bconfiden2
2020. 7. 10. 19:19
얼리 리턴은 말 그대로 일찍 return 한다는 것이다.
보통 return 은 함수를 종료하고 반환할 때 사용되는 예약어인데,
여러 조건을 검사할 때 조건이 부합하지 않으면 곧바로 return 을 넣는 패턴이다.
그렇게 함으로써 좀 더 간결하고, 가독성이 좋은 코드가 될 수 있다.
예시를 보는 것이 좀 더 깔끔한데,
아래가 일반적인 코드의 경우이다.
void function(int temp)
{
if(temp > 0)
{
if(temp < 10)
{
if(temp % 7 == 0)
{
std::cout << "temp == 7" << std::endl;
}
}
}
}
이를 얼리 리턴 스타일로 짜보자면,
void function(int temp)
{
if(temp <= 0)
{
return;
}
if(temp >= 10)
{
return;
}
if(temp % 7 != 0)
{
return;
}
std::cout << "temp == 7" << std::endl;
}
조건에 부합하지 않는 코드들을 먼저 검사해주고 그 이후 함수 내용을 작성하여
복잡한 if 문들 대신 간결한 코드 스타일을 유지해줄 수 있다.
GPU 프로그래밍에서 쓰레드를 작업에서 없애주기 위해서, 반 필수적으로 사용되는 패턴이라고 한다.