Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2001-01-12 09:15:35

At 10:46 AM 1/12/2001 +0100, Schaible, Joerg wrote:

>>What did you do about the warning messages? (See below.)
>#pragma warning( disable : 4251 ) // needs dll-interface
>// here comes the class definition
>#pragma warning( default : 4251 ) // needs dll-interface
>This warning can be ignored if the base class is implemented completly
>inline and has no static member variables. Unfortunately you have to wrap
>all your classes that separate the implementation and derive from a
>inline class with this pragmas. I managed to compile VC6 STL code really
>without any warning in level 4, but that is nothing I would advice for
>- unless you are willing to clatter the complete source with such kind of

Agreed. I'm not about to suggest messing up perfectly clean code like
boost::noncopyable with VC++ pragmas. To do it consistently, it would have
to be done to classes which might be used as base classes even though they
usually aren't. Ugh.

>>I think I'll
>>just move the timer, etc., implementation into the headers and be done
>>it. Slightly poorer encapsulation, but much less aggravation.
>I always vote encapsultaion :)

I probably shouldn't have said encapsulation. It is really more a case of
slightly increased coupling in the .hpp's to some standard library headers.
But if there is a problem with those headers, the .cpp's won't compile
anyhow, so I'm not sure it really matters much.



Boost list run by bdawes at, gregod at, cpdaniel at, john at