当前位置:C++技术网 > 资讯 > 常用宏定义写法~~~~~~~~

常用宏定义写法~~~~~~~~

更新时间:2016-10-23 10:13:46浏览次数:1+次

//检测返回值
#define RETURN_IF_FAILED(b)              do{              \     
                     if( !(b) )         \    
                      {                   \ 
                            return false; \     
                        }                  \    
             }while(0);

//demo
bool add(object *obj)
{
    RETURN_IF_FAILED(obj);
    //todo something
    return true;
}

------------------------------------------------------------------------------------------------------------------------------------------------------------------


//生成调试信息
#define ERROR_LINE(RESPONSE) #if RESPONSE     printf ("Error****Line : %d  File: %s\n",__LINE__,__FILE__); #endif



//demo
#include <stdio.h>

#define ERROR_LINE(RESPONSE) if (RESPONSE)    printf ("Error****Line : %d  File: %s\n",__LINE__,__FILE__); 
int ifSuccess()
{
    //plant your code here     return 1;
}
int main ()
{
    int r = ifSuccess();
    ERROR_LINE(r);

    return 0;
}


------------------------------------------------------------------------------------------------------------------------------------------------------------------


// ##的用法,生成函数
#define FUN(Type) Type MyFun##Type(Type f,Type g){printf ("I am fun\n");}
#include <stdio.h>

#define FUN(Type) Type MyFun##Type(Type f,Type g){printf ("I am fun\n");}

FUN(int);
int main ()
{
    MyFunint(1,2);

    return 0;
}