Boost logo

Boost :

From: Marshall Clow (marshall_at_[hidden])
Date: 2000-12-26 12:10:19


At 7:54 PM -0500 12/25/00, Daryle Walker wrote:
>A major point of my class was to not use templates at all, so the
>implementation can be offloaded to a source file. This lets the writer hide
>the platform-specific stuff there. This means that the user-visible
>interface can't know anything about the actual (platform-dependent) TCP/IP
>structures. I represented this by hiding them with a "void*".

Sounds like a perfect place to use the "pImpl" idiom.

class SocketImpl;

class tcpipbuf ...... {

private:
        scoped_ptr<SocketImpl> socketData_;
        };

And then define the SocketImpl in your source file (a different one for each implementation)

-- 
-- Marshall
"The era of big government is over."
           Bill Clinton, State of the Union Address, January 23, 1996
Marshall Clow     MusicMatch   <mailto:mclow_at_[hidden]>

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