Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
C++ Windows Programming

You're reading from  C++ Windows Programming

Product type Book
Published in Sep 2016
Publisher Packt
ISBN-13 9781786464224
Pages 588 pages
Edition 1st Edition
Languages
Author (1):
Stefan Björnander Stefan Björnander
Profile icon Stefan Björnander

Table of Contents (22) Chapters

C++ Windows Programming
Credits
About the Author
About the Reviewer
www.PacktPub.com
Dedication
Preface
1. Introduction 2. Hello, Small World! 3. Building a Tetris Application 4. Working with Shapes and Figures 5. The Figure Hierarchy 6. Building a Word Processor 7. Keyboard Input and Character Calculation 8. Building a Spreadsheet Application 9. Formula Interpretation 10. The Framework 11. The Document 12. The Auxiliary Classes 13. The Registry, Clipboard, Standard Dialogs, and Print Preview 14. Dialogs, Controls, and Page Setup Rational and Complex Numbers

The DrawFigure class


The Draw class is the root class of the hierarchy and is mostly made up of virtual and pure virtual methods intended to be overridden by the subclasses.

The difference between a virtual method and a pure virtual method is that the virtual method has a body and it may be overridden by a subclass. If the subclass overrides the method, its version of the method is called.

If the subclass does not override the method, the method of the base class is called instead. A pure virtual method does not usually have a body, and a class holding at least one pure virtual method becomes abstract. The subclass can either override all the pure virtual methods of its base class or become abstract itself:

Draw.h

enum FigureId {LineId, ArrowId, RectangleId, EllipseId}; 
class DrawDocument; 
 
class Draw { 
  public: 
    Draw(const Window* windowPtr); 

Each figure has its own identity number, returned by the GetId method:

    virtual FigureId GetId() const = 0...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €14.99/month. Cancel anytime}