MFC 에서 제공하는
(
~cpp TRACE
매크로의 기능을 VC 의 다른 프로젝트에서도 사용할 수 있다. 단, 여기서는 매크로가 아니라 함수인것을 유념하자. (
~cpp TRACE
매크로가 내부적으로 함수 호출을 하는것 같기는 한데 생각해보면 ~cpp TRACE
매크로보다 우리가 정의한 함수를 호출하는게 조금더 오버헤드가 있을것 같다 )함수 body ¶
~cpp #include <iostream> #include <windows.h> #include <tchar.h> #include <crtdbg.h> using namespace std; #ifdef _DEBUG #define TRACE Trace #else #define TRACE ; #endif void _cdecl Trace(LPCTSTR lpszFormat, ...) { va_list args; int nBuf; TCHAR szBuffer[512]; va_start(args, lpszFormat); nBuf = _vstprintf(szBuffer, lpszFormat, args); _ASSERT(nBuf < sizeof(szBuffer)); //_tprintf(szBuffer); // 이부분은 console window 에 출력해주는 부분이다. OutputDebugString(szBuffer); // debug output window 에 string 출력 va_end(args); }