|
Boost : |
From: David Abrahams (dave_at_[hidden])
Date: 2004-04-26 08:59:46
"Peter Dimov" <pdimov_at_[hidden]> writes:
>> http://www.boost.org/libs/smart_ptr/intrusive_ptr.html#Introduction
>>
>> However, the situation is different there as the called function
>> only accepts exactly one parameter.
>
> It doesn't matter. ADL should find the overload, provided that 'serialize'
> is not qualified at the point of the call.
>
> In my own library I use very similar read/write overloads that are, indeed,
> placed in the namespace of the corresponding class and found by ADL. Yes, it
> works with VC 7.1.
The recommended "overload in the library namespace" procedure was a
big concern for me, but I didn't post anything because I couldn't
remember why it's an issue. I have in my mind, left over from my work
with Peter on this problem, a rule that in the current language you
shouldn't do that, and should rely instead on ADL. I don't know why
I think that anymore, but I *can* say that Peter should be listened
to in this area; he's more aware of the issues than almost anyone.
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk