320x100

행동 패턴 9

[행동 패턴] - 방문자(Visitor)

구조 #pragma once #include class IVisitor; class BaseClass { public: virtual void accept(IVisitor* visitor) = 0; }; class DerivedClassA : public BaseClass { public: void accept(IVisitor* visitor) override { visitor->visitElementA(this); } void operationA() { std::cout accept(visitor); classB->accept(visitor); system("pause"); return 0; } 객체(DerivedClass)에 대한 알고리즘(accept function)을 객체의 구조로부터 분리하여 방..

프로그래밍/GoF 2022.01.09
320x100