오래전으로 거슬러 올라가면 2005년 여름의 일입니다.
이런 일이 일어나면 귀신이 곡할노릇이라고 하는데... 방금 그 귀신?이 다시 왔습니다. ㅋ
이번에는 딱 걸렸죠! ㅋㅋ
2005년 여름... 무지막지한 일정 속에 그 달도 밤샘에 주말 출근이 이어지고 있었습니다.
원래 서버 프로그래머로 일했는데 3D 클라이언트가 너무 하고 싶어서 잠시 외도?하던 기간이었습니다. ㅎㅎ
다시 신입으로 3D 클라 삽질을 열심히 하던 어느날...
STL의 list 객체가 정상 작동하지 않는 것이었습니다.
잘 돌아가던 코드였는데...
결과가 제대로 나오지 않았습니다. 원인도 잘 모르겠고... 그냥 이상동작?이 정답입니다. ㅋ
너무 밤을 많이 새었더니 제 정신을 먼저 의심하기 시작... (OTL...)
잠시 바람을 쐬고 돌아오기 신공으로도 해결되지 않았습니다. ㄷㄷ
옆에 팀장님은 빨리 일 끝내라고 제촉;; 저는 귀신과 한판승부중... -_ -...
휴... 프로그래머가 할 짓이 아니죠. ㅋㅋ
아무튼 그주 주말은 집에들어가서 푹 쉬고 왔습니다.
월요일 출근하니 귀신?이 사라졌습니다. -_ -+
잘 돌아갑니다. 음?...
2000년 STL을 사용해서 ACM 프로그래밍 경진대회에서 열심히 코딩하고나서 저지(Judge)의 판정...
컴파일 오류로 인정할 수 없다는 ... (물론 대회 PC에서는 잘 됬지만 저지 PC에서 컴파일 안됨.. -_ -?)
저와 선배들은 나름 열심히 짯던 코드를 다 버리고 초 삽질 C 코드로 다시 작성했지만 결국 실패와 시간초과... ㅋ
이때부터 STL에 부정적 인상이 남았던것 같습니다. ㅎㅎ
2011년 오늘... 멀티터치 코드를 라이브러리로 열심히 정리하고 이제 실행하면서 코드 테스트 중에 이상동작 발생!
주말에 밤새서 눈이 침침한가 하더니 ... 코드 귀신이 출몰하네요. ㅋ
2005년에는 VC++에서 나타나더니 오늘은 C++빌더에서!!
회사가 아니니 옆에서 쪼으는 사람도 없겠다. 스샷 남겨봅니다.
list.end()에 없던 데이타가 들어가는 현상... 사실 메모리가 변경되어버리네요.
끝나지 않는 루프... -_ -;
2005년과는 좀 다른 현상이지만... 쩝...
bugs_before.png를 보면 list의 이터레이터로 test를 볼 수 있습니다.
깔끔한 end() 노드가 보입니다.
그러나... 다음 루프에서...
bugs_after.png를 보면 test 이터레이터에 값이 들어가 있습니다.
그리고 for 루프는 무한으로... 프로그램 멈춤... -_ -;
아무튼 해결책, 컴퓨터 재부팅...
밤새지말고 컴터 끄고 집에 자주? 들어가는 건강한 생활을 하는 분들에게는 나타나지 않습니다. ㅠ.ㅠ..
|