Re: Dismal ostream performance
On 22.11.2010 07:11, David Barrett-Lennard wrote:
On Nov 22, 6:49 am, Vaclav Haisman<v.hais...@sh.cvut.cz> wrote:
David Barrett-Lennard wrote, On 21.11.2010 2:18:
Does anyone have an idea of how to find out?
Code up your own _conforming_ implementation of C++ IO streams and
benchmark
it against MS's. I do not think it will be orders of magnitude faster as
you
seem to think.
as I seem to think??
No I think it's quite possible that the poor performance is inevitable
in a conforming implementation. It might be difficult to prove
though.
[...]
I already achieve separation of the formatting and storage through a
pure abstract base class for an output octet stream:
struct IOutputOctetStream
{
virtual ~IOutputOctetStream() {}
virtual void Write(const OCTET* buffer, size_t count) = 0;
virtual void Flush() = 0;
};
This could just as easily be templatised on an element type T rather
than assume it's an octet.
My implementation [...]
I have investigated what could be done to support I18N. I think
polymorphism using pure abstract base classes is appropriate. For
[...]
Evidently you think that iostreams is pretty broken, as things stand.
I have no clue if this is true in general, but:
I know of one usable decent looking type safe alternative to iostreams
and this is called FastFormat (http://www.fastformat.org/). I have tried
it once, it seemed OK, but IMHO still needs some polishing. If you care
for something better than iostreams have a look at it.
cheer,
Martin
--
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]