2011-01-06 6 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++でも同じことができますか?

BuilderのC++のビルドメッセージウィンドウには、 'ソースの表示'オプションやダブルクリックコマンドが動作するための情報があるようです。

C++ Builder XE。

多くのDelphiユーザーもBuilder C++を使用しているため、この質問にはDelphiタグが含まれています。

+0

なぜこのタグが "Delphi"ですか? – dummzeuch

+0

あなたが私の答えに満足しているなら、それを受け入れることができますか? (そうでなければ、間違った/改善可能な理由についてのフィードバックはうまくいくでしょう) –

答えて

3

...私はC++ Builderを使用していないとして、私は知らないが、私はC++ Builderは同様の手法をサポートしていることを前提となり同等の#warningディレクティブです。ライン:

#warning Test warning message here 

は、メッセージペインに次のことを示しています

A warning message in the Messages pane

これは、他のコンパイラのメッセージのような役割を果たし、そしてそれは、コードの行に移動しますダブルクリックします。

を使用して定義されたメッセージの内部では、__FILE____LINE__のマクロは展開されません。テキストが入力され、そのまま書き出されます。ただし、送信されるメッセージにはファイルと行番号が含まれているため、使用する必要はありません。

エラーメッセージ(Delphiでは-にレベル、メモリ、ヒント、警告、またはエラーがあります)を書き出す場合は、#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

Delphiではメッセージディレクティブを含めることができます。例:

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

ビルドメッセージに警告が出力されます。ビルドメッセージは他のコンパイラのエラー/警告/ヒントと同じようにクリック可能です。クリックすると、ソースの{$ MESSAGE ...}指令の場所に移動します。 C++ Builderで

+0

#pragma warnは、C++ Builderの警告をオンまたはオフにします。 #pragma messageはメッセージを表示しますが、クリック可能ではありません –

+0

これは重要なポイントです。これはC++ BuilderプロジェクトにもDelphi Unitsが含まれている可能性があるためです。私はあなたがそれについて言葉を追加すべきだと思います。私は最後の文章を、トピックに質問をするために置き換えます。 – Wolf

関連する問題