 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
| • |
When
we throw an exception, it is as if we are using the
|
|
|
throw
operator and its associated operand to "call" a catch
|
|
block
"passing" an argument. The type of the operand
|
|
|
must
be an exact match with the type specified in the
|
|
|
associated
catch block, except for the following three
|
|
|
cases:
|
|
1) the
operand (or, actual argument) matches a constant
|
|
|
of
the same type, a reference of that type, or a constant
|
|
|
reference
of that type,
|
|
2) the
operand is an array containing elements of some
|
|
|
type
that matches a pointer to that type, or
|
|
3) the
operand is a pointer that matches a pointer to
|
|
|
void.
|
|