Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2002-05-02 21:27:36


At 03:19 PM 5/2/2002, Andrei Alexandrescu wrote:

>> 3. Is using public inheritance at all really important? My impression
is
>> that you do this to allow the policies to add interface to the
>> smart_ptr... while at the same time you eschew public member functions.
>
>Hey, I think it would be a great idea to use private inheritance. That
way,
>policies can enhance interface only through free functions, which is my
>intent anyway. What do others think?

Does that work for an array-based storage policy adding operator[] (if
there is no conversion to T* operator)? And then for both non-array and
array if there is a T* conversion?

I know I should be able to answer that from knowledge of language rules,
but it is past my bed time and my mind shut down awhile ago.

I would have trouble accepting that a smart point really supported arrays
if it couldn't supply the usual [] notation.

OTOH, we aren't talking about an unbounded list. So if private inheritance
is really better, maybe there is a way to wiggle around the need for the
two operators in question.

--Beman


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk