C/c++ 宏返回值

C/c++ 宏返回值

C语言用clang或GCC可以有解决方案,在C++中可以用以下方法,主要还是逗号运算符的原理,此方法没有在C语言中试用。

#define NV_MALLOC(sz)(\

Log_debug("NV_MALLOC---------------------->\n file:%s\n func:%s\n line:%d\n ",__FILE__,__func__,__LINE__),\

malloc(sz))

 

 

可以有多个逗号,最后一个逗号之后的表达式可以作为返回值,此方法再所有C++编译器都支持。

posted @ 2021-01-16 09:50  方东信  阅读(783)  评论(0编辑  收藏  举报