Rogue Wave banner
Previous fileTop of documentContentsIndexNext file

Section 2: Class Overview

This section gives an overview of Tools.h++, and highlights some common points among the classes.

Tools.h++ provides implementation, not policy. Hence, it consists mostly of a large and rich set of concrete classes that are usable in isolation and independent of other classes for their implementation or semantics. They can be pulled out and used just one or two at a time. Concrete classes are the heart of Tools.h++.

Tools.h++ also includes a rich set of abstract base classes, which define an interface for persistence, internationalization, and other issues, and a number of implementation classes that implement these interfaces. Although public, the implementation classes act like private classes. They are not designed to be used, and are therefore not documented.

Some Tools.h++ classes are further categorized as collection classes, or collections. A central feature of Tools.h++, the collection classes fall into three groups:

Regardless of their implementation, collection classes generally follow the Smalltalk naming conventions and semantical model: SortedCollection, Dictionaries, Bags, Sets, and so on. They use similar interfaces, allowing them to be interchanged easily. The template-based and generic collections will hold any kind of object; the Smalltalk-like collections require that all collected items inherit from RWCollectable.

Choosing which collection classes to use in your programs is not a trivial task. We have added an appendix called Choosing a Collection to help you decide which class is the best for your purposes.

Table 2 at the end of this chapter gives the class hierarchy of all the public Tools.h++ classes. In addition to these public classes, Tools.h++ contains other classes for its own internal use.


Previous fileTop of documentContentsIndexNext file
©Copyright 1999, Rogue Wave Software, Inc.
Send mail to report errors or comment on the documentation.