デバッグの便宜のために次のマクロを作成します。
1 #ifndef DEF_H
2 #define DEF_H
3 #define DEBUG_MODE
4 #define DEBUG_INFO(message) \
5 #ifdef DEBUG_MODE \
6 cout << message << endl; \
7 #endif \
8 #endif
しかし、gccは次のように文句を言います
def.h:4: error: '#' is not followed by a macro parameter
def.h:1: error: unterminated #ifndef
このコードの何が問題になっていますか?ここでいくつかの重要なポイントを見逃していますか?