Как отключить предупреждение в макросе C ++ - PullRequest
0 голосов
/ 18 января 2019

В Visual C ++ вы можете временно отключить предупреждение, используя прагму:

#pragma warning(suppress: 4307)

Как отключить предупреждение в макросе, например, когда я вызываю предупреждение «переполнение интегральной константы», например:

#define TIMES_A_MILLION(x) x * 1000000
int value = TIMES_A_MILLION(4711);

Я не хочу повторять предупреждение в каждом месте, где используется макрос, но хочу, чтобы подавление было частью самого макроса.

Это явно неможно сделать так:

#define TIMES_A_MILLION(x) \
#pragma warning(suppress: 4307) \
  x * 1000000

1 Ответ

0 голосов
/ 18 января 2019

В вашем случае вы должны использовать расширение __ pragma

__pragma

вместо

#pragma
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...