[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
4.4 The class hierarchy
GiNaC's class hierarchy consists of several classes representing
mathematical objects, all of which (except for ex
and some
helpers) are internally derived from one abstract base class called
basic
. You do not have to deal with objects of class
basic
, instead you'll be dealing with symbols, numbers,
containers of expressions and so on.
To get an idea about what kinds of symbolic composites may be built we have a look at the most important classes in the class hierarchy and some of the relations among the classes:
The abstract classes shown here (the ones without drop-shadow) are of no
interest for the user. They are used internally in order to avoid code
duplication if two or more classes derived from them share certain
features. An example is expairseq
, a container for a sequence of
pairs each consisting of one expression and a number (numeric
).
What is visible to the user are the derived classes add
and mul
, representing sums and products. See section Internal structures, where these two classes are described in more detail. The
following table shortly summarizes what kinds of mathematical objects
are stored in the different classes:
|
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |