2011-01-06 2 views
4

Visual Studio에서 다음 매크로를 원본에 포함 할 수 있으며 빌드 중에 메시지가 인쇄됩니다. 그런 다음 메시지 작성 창에서 메시지를 두 번 클릭하고 소스 행으로 이동할 수 있습니다.컴파일 중에 사용자 지정 메시지가있는 소스로 이동 하시겠습니까?

#define _QUOTE(x) # x 
#define QUOTE(x) _QUOTE(x) 
#define __FILE__LINE__ __FILE__ "(" QUOTE(__LINE__) ") : " 
#pragma message (__FILE__LINE__ "Notify user of something in code") 

Builder C++에서도 동일한 작업을 수행 할 수 있습니까?

빌더 C++의 빌드 메시지 창에서 '소스보기'옵션이나 더블 클릭 명령을 사용하면 더 많은 정보가있는 것처럼 보입니다.

C++ Builder XE.

이 질문에 Delphi 태그가 포함되어 있습니다. 많은 Delphi 사용자도 Builder C++을 사용합니다.

+0

왜이 태그가 "Delphi"입니까? – dummzeuch

+0

내 대답에 만족하면 받아 들여 주시겠습니까? (그렇지 않으면 잘못되었거나 개선 될 수있는 이유에 대한 피드백은 없습니다.) –

답변

3

C++ 빌더에서 이에는 #warning 지침입니다. 라인 :

#warning Test warning message here 

는 메시지 창에 다음을 표시합니다 :

A warning message in the Messages pane

이 다른 컴파일러 메시지와 같은 역할을하고, 코드의 라인으로 이동 더블 클릭.

__FILE____LINE__ 매크로는 #warning를 사용하여 정의합니다 메시지 내부 확장하지 않습니다 - 그것은 텍스트를 받아 서면으로 정확히 그것을 밖으로 뱉어. 그러나 출력 된 메시지에는 파일과 행 번호가 포함되어 있기 때문에 사용하지 않아도됩니다.

오류 메시지를 작성하려면 (예 : $MESSAGE에 레벨, 메모리, 힌트, 경고 또는 오류가있는 경우) #error을 사용할 수 있습니다. 그것은 #warning과 동일하게 작동하고 다른 모든 오류 컴파일 같은 그 줄에서 컴파일을 중지, 그래서

#error This is an error message 

내가 C++ Builder 2010을 사용하고

An error message in the Messages pane

을 제공하지만, 그 적당히 확신 이 지시어는 여러 버전에서 작동합니다.

(단, C++ Builder 질문 'delphi'에 태그를 붙이는 것은 일반적으로 괜찮습니다. IDE 또는 VCL에 대한 많은 질문이 두 커뮤니티 모두에게 똑같이 대답 할 수 있기 때문에 정상적으로 좋습니다. 델파이 사람들은 특정 C++ Builder 컴파일러 지시문에 대해 알지 못할 것이기 때문에 이러한 질문을 던지십시오. 'C++ - builder'태그를 붙이면 좋습니다.)

0

델파이에서는 메시지 지시어를 포함 할 수 있습니다. 예 :

{$MESSAGE WARN 'To be or not to be'} 

빌드 메시지에 경고가 출력됩니다. 이 빌드 메시지는 다른 컴파일러 오류/경고/힌트와 마찬가지로 클릭 할 수 있으며 소스를 클릭하면 {$ MESSAGE ...} 지시문의 위치로 이동합니다.

내가 C++ 빌더를 사용하지 않는 모르겠지만, 나는 C++ Builder는 유사한 기술을 지원한다고 가정 할 ...

+0

#pragma warn은 C++ Builder에 대한 경고를 켜거나 끕니다. #pragma message는 메시지를 표시하지만 클릭 할 수 없습니다. –

+0

C++ - Builder 프로젝트에 Delphi Units가 포함될 수 있기 때문에 이는 중요한 사항입니다. 나는 그것에 대해 한 마디 덧붙여 야한다고 생각합니다. 주제에 대한 질문을하기 위해 마지막 문장을 대체합니다. – Wolf

관련 문제