 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
| • |
To
specialize a member function, we must define the
|
|
|
specialized
version of the function. A partial specialization
|
|
|
specifies
what it expects as the template's actual arguments
|
|
following
the class identifier. These arguments must be
|
|
|
specified
in the order that corresponds to the formal
|
|
|
template
argument list.
|
|
| • |
Not
all arguments must be specialized; in these situations,
|
|
|
the
identifiers specified in the formal template argument
|
|
|
list
may be used instead of specific types and/or values.
|
|
|
When
all arguments are specialized, we have an explicit
|
|
|
specialization;
in this case, the template's formal argument
|
|
|
list
is empty (e.g., template <>).
|
|