336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

보통 Try, Catch 문이라고 하면 이런식으로 쓰게 될 것입니다.

void function()
{
    Try
    {
    }
    Catch
    {
        Throw;
    }
}

하지만 throw 를 하게 되면 내부적으로 다소 많은 부하가 걸릴 수 있다고 합니다.
(이 부분에 대해서 개발 실장님께 들었는데 정확한 정보는 찾아보지 못했습니다. 찾게 되면 추가적으로 내용을 쓰도록 하겠습니다.)
그래서 대신에 이런 식으로 처리하면 어떨까 합니다.

void function()
{
    do // dummy do
    {
        // 여기가 try
        if(오류) break;
        if(오류) break;

        // 오류에 걸리지 않았다면 처리
        return;
    } while(false)
    // 여기가 catch
    ERROR("오류가 났습니다.");
}

특히 서버 같은 경우 최적화가 매우 중요하므로,
특별한 상황이 아니라면 throw 를 이용하지 않는 것이 좋지 않을까 생각합니다.

do 든 while 이든 자주 사용하는 것이지만, '이런 식으로 응용을 할 수 있구나' 라고
생각하게 되는 좋은 예제라고 생각합니다.


출처 : http://www.dingpong.net/tt/8?category=2

Posted by 역시인생한방
,