Я пытаюсь написать макрос, чтобы использовать подавление неиспользуемых переменных предупреждений, когда пользователь хочет их (например, в производных классах, когда вы еще не реализовали весь класс). Я знаю, что могу удалить имя переменной ... но чтобы было ясно, я бы предпочел макрос).
Пока у меня есть это:
#ifdef WIN32
#define UNUSED(x) x
#else
#define x __attribute__((unused))
#endif
Используется как:
void test_fn(int UNUSED(test_var)) {...}
Я видел этот пост: подавление-никогда-не-используется-и-никогда-не-назначен-для-предупреждения-в-с-остром , но это дало мне результат, который я могу ' реально использовать (многострочный #pragmas).
Итак, мой вопрос, есть ли MSVS-эквивалент __attribute__((unused))
? - то есть на одной линии?
Примечание: этот вопрос не отвечает на вопрос о том, как сделать то, что я спрашиваю: how-do-i-best-silence-a-warning-about-unused-variable , поскольку он не описывает, как использовать его в прототипе функции таким образом, чтобы он работал как с MSVS, так и с gcc.