Если же переменная не нужна заведомо и никогда не будет нужна, например, в данной перегрузке метода/версии виртуальной функции, достаточно просто не указывать её имя в прототипе.
Не совсем. Есть несколько функций с одним интерфейсом (скажем параметрами А и Б). Так вот где-то есть указатель на колбек и эти функции по очереди присобачиваются туда. Одна выводит, скажем, А, другая Б.