Boost logo

Boost :

From: Stewart, Robert (stewart_at_[hidden])
Date: 2002-02-01 08:49:50


From: Karl Nelson [SMTP:kenelson_at_[hidden]]
>
> Does cout << format("%#010x" , complex<int>(20,21) ); mean
> A) the user wants all integers output to be show base with
> 12 charactors zero padded. 0x00000016+0x00000017i
> B) The total width should be 10 with showbase and zero padding?
> 0x16+0x17i

I would definitely expect B. Otherwise, the width has relatively little
control over the output; any user-defined type could wreak havoc on
formatting.

> Should formating of int and float be in iostream instead
> Ie.
> os.float_format("##.####");
> os.int_format("0x0######",hex);
> rather than the simple state machine?

This is the direction that we should pursue: replacing/augmenting IOStreams
to provide the facilities we need rather than trying to graft on a hack.
IOW, create boost::basic_ostream<> as a drop-in replacement for (ultimately
in an updated standard, ideally) std::basic_ostream<>. Doing that means we
can design the interactions at the lowest level rather than trying to graft
them on after the fact in an unsatisfactory way.

To answer the question specifically, I would appreciate the ability to
specify formatting with such format pictures.

Rob
Susquehanna International Group, LLP
http://www.sig.com


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