how can I avoid the use of #if in a polymorphic print macro

后端 未结 4 726
终归单人心
终归单人心 2021-01-26 11:41

Let\'s try to run the following code:

#include 
#define MY_MACRO1(isArray,y) do { \\
                      if(isArray) \\
                                 


        
4条回答
  •  忘掉有多难
    2021-01-26 12:40

    You can use BOOST_PP_IF:

    #include 
    
    #define MY_MACRO1(isArray,y) printf("%d", BOOST_PP_IF(isArray, (y)[0], (y)))
    

    See it live on Coliru

提交回复
热议问题