원본 : http://www.debuglab.com/knowledge/nowarning.html 1.요약 VS 에서 새로 만든 프로젝트의 디폴트 warning 레벨은 3 입니다. 하지만 많은 서적에서 warning 레벨을 4로 맞추어 놓기를 권장하고 있습니다. 컴파일러로부터 보다 많은 조언을 구할 수 있기 때문입니다. 이 경우에 사용하지 않은 인자에 대해서도 warning을 발생시키는데 MFC에는 이런 warning에 대비한 매크로가 있습니다. 2.본문 사용하지 않는 인자에 대해서 warning을 발생시켜주는 점은 참 고맙지만 고의로 그렇게 한 경우 - 보통 메시지 핸들러에서 이런 경우가 많습니다 - 에는 의미없는 메시지입니다. 이럴때는 크게 3가지 방법으로 warning을 제거할 수 있습니다. 1. 인자를 빼버린다. void CMyView::OnMouseMove( UINT, CPoint point) => 이해하기 힘든 코드가 될 수도 있습니다. 2. 인자를 주석처리한다. void CMyView::OnMouseMove( UINT /*nFlags*/, CPoint point) => 1 번보다는 좋지만, 문제점이 몇 가지 있습니다. 3. UNUSED 매크로를 사용한다. *추천* void CMyView::OnMouseMove( UINT nFlags, CPoint point) { UNUSED_ALWAYS(nFlags) ... } => 참 보기 좋네요.. ----------------------------------------------------------- UNUSED 매크로는 MFC에서 다음과 같이 정의되어 있습니다. #ifdef _DEBUG #define UNUSED(x) #else #define UNUSED(x) x #endif #define UNUSED_ALWAYS(x) x 정리하자면 UNUSED 는 release 버전에서만 사용하지 ...