당연한거 아냐? -_- 언제부턴가.. 썩… 당연하지 않은…

음력 새해… 첫출근의 시작에서… 열라 코딩하다며보면, 가끔 아래와 같은 문장을 기술한다.

const string& GetValueAsString()
{
   char buf[MAX_PATH];

   // buf에 이것저것 뒤지고 볶고 자시고 먹고~ 하다가....

   return buf;
}

반환값으로 임시 변수를 반환하는 것… 사용하기에 편리하고 융통성이 높은(?) stl의 string이기에 무심코…. 이리 문장을 작성하고는, …. 실행.  반환값을 살펴보면….. 바람과 함께 사라진 buf 값.. 위의 문장을 기술하고 단위 테스트를 거쳤다면 바로 문제점을 파악……

그렇지 않고 다음 프로세스로 넘어갔다면… @1#8$ 대략… 어디메가 문제련가… 하고 고심했을터…. 단위테스트의 중요성과 항상 기본을 잊지 말아야 한다는 깨달음.

방법 아시겠죠? 처음 저는 다소 버벅대긴 했지만….. 한번 쯤 고민해보시길~

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다