Шаблон проектирования Visitor - это способ отделения алгоритма от структуры объекта, с которой он работает. Это одна из моделей поведения Банды четырех. При использовании этого тега для сложных вопросов реализации - пометьте язык кода, на котором написана реализация.

По сути, шаблон Visitor позволяет вам определять новую операцию, не изменяя классы элементов, на которых она написана. работает; вместо этого создается класс посетителя, который реализует все соответствующие специализации виртуальной функции. Посетитель принимает ссылку на экземпляр в качестве входных данных и реализует цель посредством двойной отправки.

Это один из поведенческих шаблонов «Банды четырех»

Больше информации доступно в Википедии.