Class Templates
If we define data members that are themselves template
classes, the classes are not implicitly instantiated until
those members are first used.
In the following class, the list_object data member's class
is not implicitly instantiated until the point at which data
member is first used.
On the down side, unless explicit instantiation (explained
in the next section) is requested, errors can only be found
by explicitly using all member functions for each use
expected. This applies to syntax errors as well as run time
errors.