$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
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