On Fri, Mar 07, 2003 at 10:09:40AM -0500, David Abrahams wrote: > Pavol Droba <[EMAIL PROTECTED]> writes: > > > I have tried to make forward declaration of std::vector and alike, but it does not > > work all the time, > > and, I think it is even forbiden by some compilers. > > It's forbidden by the standard. > > > My question is: > > Is there a correct way how to avoid these unwanted inclusions? > > Not if they're standard containers :(
not good :( > > > Or more specificaly: > > How to define a partial specialization for a specific type, without including > > its full definition? > > That's a different question: > > template <class T> struct whatever; > > template <class T> struct whatever<boost::shared_ptr<T> > > { > //... > > }; > > You never have to define the primary template, in fact. I wanted to do something else: template <class T> struct trait_class { .... } template <class T> struct trait_class<std::vector<T> > { .... } without #include <vector> Is this possible? Or is there a way how to achieve the same efect, but without including <vector>? I see, that is probably isn't .. Pavol _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost