subramanian100in@yahoo.com, India
Guest
Posts: n/a

 04-13-2008
Suppose T is a type.

Consider the two functions:

void fn(T& first)
{
....
}

void fn(T const & second)
{
....
}

Suppose I have the declaration
T obj;

If I call fn(obj), then the function, void fn(T& first) will be
called. This is because:
When both
1) 'T' to 'T&' (this is a direct match)
2) 'T' to 'T const &' (this involves trivial conversion)
are present, direct match takes higher precedence. If direct match is
not found, only then trivial conversion is considered. That is, if the
first function void fn(T& first) is not present, only then the second
function void fn(T const & second) will be called.

Is my above understanding correct ?

Kindly clarify.

Thanks
V.Subramanian

Looney
Guest
Posts: n/a

 04-13-2008
On Apr 13, 3:26 pm, "(E-Mail Removed), India"
<(E-Mail Removed)> wrote:
> Suppose T is a type.
>
> Consider the two functions:
>
> void fn(T& first)
> {
> ...
>
> }
>
> void fn(T const & second)
> {
> ...
>
> }
>
> Suppose I have the declaration
> T obj;
>
> If I call fn(obj), then the function, void fn(T& first) will be
> called. This is because:
> When both
> 1) 'T' to 'T&' (this is a direct match)
> 2) 'T' to 'T const &' (this involves trivial conversion)
> are present, direct match takes higher precedence. If direct match is
> not found, only then trivial conversion is considered. That is, if the
> first function void fn(T& first) is not present, only then the second
> function void fn(T const & second) will be called.
>
> Is my above understanding correct ?
>
> Kindly clarify.
>
> Thanks
> V.Subramanian

yes that is correct .
check out http://accu.org/index.php/journals/268
for a details

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is OffTrackbacks are On Pingbacks are On Refbacks are Off Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post Alf P. Steinbach C++ 10 07-27-2011 05:51 AM Giannis Papadopoulos C Programming 5 09-05-2005 09:06 PM seberino@spawar.navy.mil Python 2 08-01-2005 12:38 PM komal C++ 6 01-25-2005 11:13 AM James Vanns C++ 7 01-21-2004 02:39 AM