サンプル4 testErrorCollision.cpp

 ERRORという識別子が衝突しないことを確認するサンプルです。

関連ファイル
  • testErrorCollision.cpp
ファイルの中身

testErrorCollision.cpp

  1. #define ERROR 666
  2. #define LOG4CPP_FIX_ERROR_COLLISION 1
  3. #include <log4cpp/Priority.hh>
  4. #include <assert.h>
  5. int main(int argc, char** argv) {
  6. assert(ERROR == 666);
  7. }

実行結果例

 このプログラムは実行しても何も起きません。
もし、このサンプルをビルドしたときに、

Naming collision for 'ERROR' detected. Please read the FAQ for a workaround.
('ERROR'という名前の衝突を検出。この問題を回避するために、よくある質問をお読みください。)

というエラーが出た場合にはLog for C++のWebトップページの「よくある質問」の「4.1」を参照してください。

 なお、このサンプルをビルドする際にlog4cppへのライブラリの参照は必要ありません。すなわち、log4cppをビルドしていなくてもこのサンプルはビルドできます。log4cppのヘッダファイルは参照するのでincludeディレクトリの指定は必要となります。