Como melhor silenciar um aviso sobre variáveis não utilizadas?

Tenho um aplicativo de plataforma cruzada e em algumas das minhas funções nem todos os valores passados para as funções são utilizados. Por isso, recebo um aviso do GCC informando que existem variáveis não utilizadas.

Qual seria a melhor maneira de codificar o aviso?

Um #ifdef em torno da função?

#ifdef _MSC_VER
void ProcessOps::sendToExternalApp(QString sAppName, QString sImagePath, qreal qrLeft, qreal qrTop, qreal qrWidth, qreal qrHeight)
#else
void ProcessOps::sendToExternalApp(QString sAppName, QString sImagePath, qreal /*qrLeft*/, qreal /*qrTop*/, qreal /*qrWidth*/, qreal /*qrHeight*/)
#endif
{

Isso é tão feio, mas parece o jeito que o compilador prefer

Ou atribuo zero à variável no final da função? (que eu odeio porque está alterando algo no fluxo do programa para silenciar um aviso do compilador).

Existe uma maneira correta?

questionAnswers(19)

yourAnswerToTheQuestion