On Tue, Nov 06, 2001 at 09:22:58PM +0100, Lars Gullik Bjønnes wrote: > | class pipestream : public std::iostream { > | public: > | /// constructor taking the external command as argument > | explicit pipestream(char const * const cmd[]); > | /// constructor taking the external command as argument > | explicit pipestream(char const * const cmd, > | char const * const arg1 = 0, > | char const * const arg2 = 0); > > I am not very fond of these signatures.
That was to be expected. I just want "short user code" for the most common cases, and I don't want to introduce a dependency on string which is not really needed. > but I am not sure what a good alternative would be. I came to the same conclusion ;-} > | class pipebuf : public streambuf { > | > | public: > | #ifndef MODERN_STL_STREAMS > | typedef char char_type; > | typedef int int_type; > | #endif > | > | public: > | /// The only constructor we need > | explicit pipebuf(int sock); > | /// no copying to save us ref counting sockets > | pipebuf(const pipebuf &); > | /// no assignment > | pipebuf & operator=(const pipebuf &); > > Why not make them private then? An oversight. > [...] > Ok, so sockets[0] is set to be both standard in and standard out. Maybe I really should read something about sockets and pipes now... Andre' -- André Pönitz .............................................. [EMAIL PROTECTED]