Я пытаюсь реализовать шаблон посетителя для структуры объекта, которая имеет методы с различными типами возвращаемых значений (string, signed int, unsigned int и т. д. ).
Теперь в иерархию объектов я добавил метод Accept со следующей сигнатурой (используя C++):
void Accept(Visitor *);
Я не могу понять, как я могу использовать тот же интерфейс (с возвращаемым типом void )в то же время позволяя моим конкретным методам иметь разные типы возврата.