У меня есть код C ++, как показано ниже:
#define xxx return
int main()
{
xxx 0;
}
Он работает, как и ожидалось.
Теперь я изменяю код следующим образом:
#define xxx return
#define TEST(X) ((X) == (false) ? (xxx 1) : ())
int main()
{
bool b = false;
TEST(b);
return 0;
}
Всловом, я хочу return 1
, если b
равно false
.Но я получаю ошибку:
error: expected primary-expression before ‘return’