Supplement: C++ Code Examples

Example 15-2. C++ Code Fragments
 class SalesTicket : public Component { public: void prtTicket(); } SalesTicket::prtTicket() { // sales ticket printing code here } class Decorator : public Component { public: virtual void prtTicket(); Decorator( Component *myC); private: Component *myComp; } Decorator::Decorator( Component *myC) { myComp= myC; } void Decorator::prtTicket() { myComp->prtTicket(); } class Header1 : public Decorator { public: Header1( Component *myC); void prtTicket(); } Header1::Header1 (Component *myC) : Decorator(myC) { } void Header1::prtTicket () { // place printing header 1 code here Decorator::prtTicket(); } class Header2 : public Decorator { public: Header2( Component *myC); void prtTicket(); ...

Get Design Patterns Explained: A New Perspective on Object-Oriented Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.