 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
| • |
To
determine if a user defined type conversion is used, the
|
|
|
compiler
checks if a conversion is defined for the type
|
|
|
needed.
|
|
|
| • |
If
there is, then the compiler checks that the type matches
|
|
|
the
type supplied or that the type supplied can be
|
|
|
converted
by applying one of the built-in type promotions
|
|
|
or
conversions.
|
|
|
| • |
Only
one such built-in type promotion or conversion will
|
|
|
be
applied before applying the user defined type
|
|
|
conversion
itself.
|
|
|
| • |
Thus,
at most one built-in type conversion and at most one
|
|
user
defined type conversion will ever be implicitly
|
|
|
applied
when converting from one type to another.
|
|