지금 회사에서는 함수 안에서 return 문을 딱 2개만 쓸 수 있게 코딩 스타일로제한을 했다. 그래서 대부분 구현된 함수 구조를 보면 다음과 같다.

function( ) 
{ 
    /* 로직 구현 부분 */ 

    return 성공을 나타내는 코드; 

    /* 예외 처리 부분 */ 

    return 에러를 나타내는 코드; 
}

이런 형태로 제약을 하면서 실행 흐름을 단순하게 하여 가독성을 높이고, 버그를 줄이는 효과가 있다.

이런 형태로 구현될 수 있게 도와주는 예외 처리를 위한 매크로들이 있는데, 자세한 내용은 다른 포스트로 정리를 하겠다. 예외 상황 조건을 충족하면 예외 처리 부분으로 넘어가게 goto 문을 이용한 매크로라는 것만 알면 된다.