Rogue Wave banner
Previous fileTop of documentContentsIndexNext file

2.1 Concrete Classes

The concrete classes consist of:

2.1.1 Simple Classes

Tools.h++ provides a rich set of lightweight simple classes. By lightweight, we mean classes with low-cost initializers and copy constructors. These classes include: RWDate (for dates); RWTime (for times, with support for various time zones and locales); RWCString (for single and multibyte strings); RWWString (for wide character strings); and RWCRegexp or RWCRExpr (for regular expressions). Most of these classes can be held in four bytes or less, and have very simple copy constructors (usually just a bit copy) and no virtual functions. See the Class Reference.

2.1.2 Template-based Collection Classes

Template-based collection classes, or templates for short, give you the advantages of speed and type-safe usage. When templates are used sparingly, their code size can be quite small. When templates are used with many different types, however, their code size can become large because each type effectively generates a whole new class. If your compiler is capable of using the Standard C++ Library, you can use the Tools.h++ template-based collections that are based on the Standard C++ Library. If your compiler does not have access to the Standard C++ Library, you can still use a subset of the templates, as described in Section 11.3.1 and 11.10.

2.1.3 Generic Collection Classes

Generic collection classes are those which use the <generic.h> preprocessor macros supplied with your C++ compiler. They can approximate templates, in the sense that they are typesafe, for compilers that do not support templates, and so are highly portable. However, because they depend heavily on the preprocessor, it can be difficult to use a debugger on code that contains them. See Section 12 for more information.


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