The Visitor pattern represents an operation to be performed on the elements of an object structure without changing the classes on which it operates . This pattern can be observed in the operation of a taxi company. When a person calls a taxi company (accepting a visitor), the company dispatches a cab to the customer.