[ CnUnix ] in KIDS 글 쓴 이(By): burp (__) 날 짜 (Date): 2004년 6월 14일 월요일 오후 06시 29분 40초 제 목(Title): [Q] 매크로 문법중에 ____ ACE 관련 책을 보다가 다음과 같은 #define 문을 보게되었습니다. 아래에서 ____ 것은 첨 봅니다. 이게 뭐하는 놈인가요? #if (ACE_NTRACE == 1) # define TRACE(X) # define TRACE_RETURN(V) # define TRACE_RETURN_VOID() #else # define TRACE(X) Trace ____ (TRACE_PREFIX, \ ACE_TEXT (X), \ __LINE__, \ ACE_TEXT (__FILE)) # define TRACE_RETURN(V) \ do { ____.setLine(__LINE__); return V; } while(0) # define TRACE_RETURN_VOID() \ do { ____.setLine(__LINE__); } while(0) #endif setLine은 Trace 클래스의 멤버함수이고, ____ 뒤에 있는 괄호 안의 인자가 Trace 생성자의 인자와 동일하네요. TRACE_RETURN에서 while(0)의 용도도 모르겠습니다. 도와주세요. 넘 복잡해요. |