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