Tools.h++ Manual

104011 Tandem Computers Incorporated 1-5
1
names like "String", "Vector", "Stack", etc. It is also for this reason that class
names and many of the potentially generic names have an "RW" prepended
(e.g., "RWBoolean"). We have worked hard to make sure that Tools.h++ is
compatible with other class libraries. Secondly, the names are intended to
convey as precisely as possible what the class does.
Nevertheless, there are a set of typedefs that give these various classes generic
names like
Stack
or
OrderedCollection
that are consistent with the
Smalltalk-80 names. These typedefs can easily be changed if there is a problem
with duplicate names.
1.5 Reading this manual
This manual is intended to serve two purposes: to be an introduction to using
the Tools.h++ Class Library and to be an intermediate-level tutorial on the
language C++, using the Class Library as an aid to discussing some of the more
subtle aspects of C++. It assumes that you are familiar with the basics of C++,
but not yet an expert. The discussion is generally more detailed than what is
necessary to actually use the library—if you find yourself getting overwhelmed
by details, by all means, abandon the coming chapters and rely on the many
examples provided with the library.
If you are not familiar with C++ at all, we do not recommend trying to learn it
from the three definitive reference books available: Stroustrup (1991), Lippman
(1989), and Ellis and Stroustrup (1990; sometimes ominously referred to as "The
ARM"—Annotated Reference Manual). Their terse (but precise) style make
them better suited as references to the language.
In what follows, there are several references to Stroustrup and Lippman's
books—it may be helpful to have a copy available.
Occasionally there will be a highlighted paragraph explaining either a key
point, or "An Aside". The latter can be ignored safely without losing the
essential thread of the discussion.
Throughout this manual, Class names, examples, operating system commands,
and code fragments are shown in a
courier
font. Vertical ellipses are used to
indicate that some part of the code is missing: