Skip to Content
Navigating C++ and Object-Oriented Design
book

Navigating C++ and Object-Oriented Design

by Paul Anderson, Gail Anderson
October 1997
Intermediate to advanced
800 pages
20h 48m
English
Pearson
Content preview from Navigating C++ and Object-Oriented Design

10.1. Why Should Classes Be Generic?

Many classes manage only one type. Class String (page 311), for instance, handles characters, whereas class Complex (page 293) works only with doubles. These groups of classes are not generic because they always manage the same type.

You must be careful when designing classes to anticipate managing generic types. Consider the following integer Stack class, for instance.

 class Stack { // Integer Stack private: int *v; // pointer to integer data int top; // top of Stack int len; // length of Stack Stack(const Stack &); // disable copy constructor Stack & operator=(const Stack &); // disable assignment enum { maxlen = 80 }; // default length public: // Constructor explicit Stack(int size = maxlen); // Destructor ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Exploring C++20: The Programmer's Introduction to C++

Exploring C++20: The Programmer's Introduction to C++

Ray Lischner

Publisher Resources

ISBN: 0135327482Purchase book