October 1997
Intermediate to advanced
800 pages
20h 48m
English
Class designers should create objects with an appealing set of useful behaviors. This seems obvious but in reality is a difficult job. Applications are likely to use objects in a myriad of ways, which class designers must anticipate. Objects, for example, may appear in complex expressions with overloaded operators, function calls, constructors, and user-defined conversions. An understanding of how object initialization differs from object assignment is critical because compiler defaults are not desirable for all class methods.
This chapter presents a class design “boilerplate” that helps create consistent and extensible classes. Along the way, we'll give you a class design checklist and show you how to apply overloading ...