Why compiler complain about this macro declaration

后端 未结 3 370
梦如初夏
梦如初夏 2021-01-01 23:30

I write the following macro for debug convinience,

1 #ifndef DEF_H
2 #define DEF_H
3 #define DEBUG_MODE
4 #define DEBUG_INFO(message)     \\
5         #ifdef         


        
3条回答
  •  傲寒
    傲寒 (楼主)
    2021-01-01 23:51

    You cannot have #ifdefs inside a macro definition. You need to turn it inside out:

    #ifdef DEBUG_MODE
    #define DEBUG_INFO(message) cout << (message) << endl
    #else
    #define DEBUG_INFO(message)
    #endif
    

提交回复
热议问题