Book Image

C++ Windows Programming

By : Stefan Björnander
Book Image

C++ Windows Programming

By: Stefan Björnander

Overview of this book

It is critical that modern developers have the right tools to build practical, user-friendly, and efficient applications in order to compete in today’s market. Through hands-on guidance, this book illustrates and demonstrates C++ best practices and the Small Windows object-oriented class library to ease your development of interactive Windows applications. Begin with a focus on high level application development using Small Windows. Learn how to build four real-world applications which focus on the general problems faced when developing graphical applications. Get essential troubleshooting guidance on drawing, spreadsheet, and word processing applications. Finally finish up with a deep dive into the workings of the Small Windows class library, which will give you all the insights you need to build your own object-oriented class library in C++.
Table of Contents (22 chapters)
C++ Windows Programming
Credits
About the Author
About the Reviewer
www.PacktPub.com
Dedication
Preface
Free Chapter
1
Introduction

The DynamicList class


The DynamicList class can be regarded as a more advanced version of the C++ standard classes list and vector. It varies its size dynamically:

DynamicList.h

namespace SmallWindows { 
  template <class Type> 
  class DynamicList { 
    public: 

The IfFuncPtr pointer is a function prototype that is used when testing (without changing) a value in the list. It takes a constant value and a void pointer and returns a Boolean value. DoFuncPtr is used when changing a value in the list and takes a (non-constant) value and a void pointer. The void pointers are sent by the calling methods; they hold additional information:

      typedef bool (*IfFuncPtr)(const Type& value, void* voidPtr); 
      typedef void (*DoFuncPtr)(Type& value, void* voidPtr); 

The list can be initialized by, and assigned to, another list. The default constructor creates an empty list, and the destructor deallocates the memory from the list:

      DynamicList(); ...