int main(int argc, char *argv[]) { Implementor * pImp = new ConcreteImplementorA(); Abstraction * pa = new RefinedAbstraction(pImp); pa->operation(); Abstraction * pb = new RefinedAbstraction(new ConcreteImplementorB()); pb->operation(); delete pa; delete pb; return 0; }
int main() { AbstractionImpl* pImpl = new ConcreteAbstractionImplA(); Abstraction* pAbstraction = new RefinedAbstraction(pImpl); pAbstraction->operation(); return 0; }