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]

Reply via email to