Выполнение фиктивного заявления - PullRequest
2 голосов
/ 21 декабря 2011

В моей текущей программе у меня уже есть функция, определенная как

void functionName( const customClass object );

Теперь в коде этой функции этот объект не используется.У меня нет разрешения на удаление параметра, а также я не могу удалить предупреждение unused parameter.

Есть ли оператор, который я могу выполнить с этим объектом (customClass не имеет функций, которые я могу запустить здесь), чтобы это предупреждение не появлялось?

Ответы [ 4 ]

7 голосов
/ 21 декабря 2011

Вы можете удалить имя параметра из определения:

void functionName( const customClass );

Это не меняет сигнатуру функции (она совместима с вашим существующим объявлением), но поскольку переменная не названа, предупреждение о неиспользованном параметре не будет.

4 голосов
/ 21 декабря 2011

Обычный способ сделать это

void functionName(const customClass object)
{
    (void)object; // gets rid of warning
}
4 голосов
/ 21 декабря 2011

Вы можете удалить имя аргумента «объект».

1 голос
/ 21 декабря 2011
void functionName(const customClass object)
{
    object; // gets rid of warning
}

Я думаю, вы можете привести его к void, то есть: (void)object;, но я не совсем уверен.Макросы типа UNREFERENCED_PARAMETER делают это.

#define UNREFERENCED_PARAMETER(P) (P)
void functionName(const customClass object)
{
    UNREFERENCED_PARAMETER(object);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...