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.