Boost logo

Boost :

From: Daryle Walker (darylew_at_[hidden])
Date: 2000-12-23 19:35:53

on 12/14/00 11:10 PM, Jens Maurer at Jens.Maurer_at_[hidden] wrote:

> Daryle Walker wrote:
>> I think C++ I/O is neat, so rounded up a bunch of ideas I've thought of and
>> some that I've seen in the newsgroups, and some in C++ books and put them
>> together in a sub-library. I'm going to add a few more headers later.

I just put up version 4 of the More-I/O library, which should address some
of the following thoughts.

> A few random thoughts:
> - The skip() function seems to be undocumented.

I didn't have a 'skip' function. It was a name of the 'char' specialization
of the 'basic_skip' class template. I guess you are thinking that my
manipulator was set up like the ones in the standard library. However, my
new version does use the system you were thinking about. (Add a 'skip'
function which returns objects from 'basic_skipper'.)

> - The memory streams are interesting in the persistence context.
> - In general, the stuff should be split up a little bit better.

I did a couple of splits in the headers.

> The non-persistent stream manipulators may overlap with the
> type-safe printf-like output proposal we had on boost a few months
> ago.

In what way?

> - Tests should be written for all functions.

Yeah. I don't use C++ I/O that much, besides basic writing/reading, so I
don't know how to make good test cases.

> - more_iomanip.hpp has default template arguments for function
> templates. This is an error in general, and it is not needed here
> because of template argument deduction.

OK. I wonder if I need it for the new 'skip' function template.

> - The header dependency list of more_iomanip.hpp looks slightly
> frightening -> a reason to split it up.
> - basic_skip::istream_type operator>>(...) has a superfluous
> typename in the parameter list.


Daryle Walker
Mac, Internet, and Video Game Junkie
darylew AT mac DOT com

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