我需要运行两段代码。 (不,我不允许改变他们中的任何一个)。
第一件作品定义一个宏
#define MACRO do { /* stuff in multiple lines and do not return a value */ } while (0)
第二部分使用if
声明中的另一个宏
if (ANOTHER_MACRO) { /* do some stuff */ }
我需要ANOTHER_MACRO
使用MACRO
,我可以定义ANOTHER_MACRO
。
我认为inline
函数是正确的方法,但是既不使用宏也不使用inline
函数,我可以使它工作。有什么建议吗?
答案 0 :(得分:1)
只需插入一个函数即可在一侧调用MACRO
并在另一侧返回一个值。
#define ANOTHER_MACRO theFunc()
bool theFunc() {
MACRO;
return /* something */;
}