🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #1690

Re: ios::binary

#1690
From: Harald Fuchs
Date: Mon, 26 Feb 1996 17:35
36 lines
2544 bytes
kuehl@uzwil.informatik.uni-konstanz.de (Dietmar Kuehl) writes:

> : >     >        datei << (char)datstr;

> Das hat aber, zumindest konzeptionell, immernoch nichts mit einer
> binaeren Ausgabe zu tun!  Sicher wird das passende Bitmuster
> gespeichert, aber der korrekte Weg binaere Daten (mit einem 'ostream')
> zu speichern ist 'ostream::write(char *, size_t)' ('char*' statt
> 'void*' ist noetig, da 'void' keine Groesse hat).

Ist das nicht Definitionssache?  Man könnte doch einfach sagen, das
zweite Argument gibt die Größe in Bytes (aka sizeof char) an.  Dann
könnte das erste Argument doch void* sein, und der häßliche
static_cast fiele weg.

> Ich hatte mal mit dem Gedanken gespielt "schnell mal" sowas wie
> 'ibstream' und 'obstream' zu schreiben, bin aber an so trivialen
> Problem wie 'double's zu speichern gescheitert. Wenn jemand einen
> sinnvollen Vorschlag fuer ein (halbwegs) Platform unabhaengiges Format
> (und moeglichst auch weiss, wie man das halbwegs Platform unabhaengig
> implementiert) hat, dann koennte man sowas mal angehen...

Ein plattformunabhängiges Binärformat existiert bereits, nämlich das
von Sun entwickelte XDR.  Gips auch auf anderen Kisten wie DEC
Alphas.  Irgendwer hat sogar mal eine Klasse XDRstream geschrieben,
aber das war, bevor das Standardisierungskomitee die iostreams in die
Finger bekommen hat.

> "Kleinere"
> Nebenanforderungen, wie etwa Typsicherheit, zu erfuellen waere auch
> ganz nett :-)

Fände ich gar nicht nett, weil das die Größe der Binärdarstellung
aufblasen würde, und weil es eventuell nicht sprachunabhängig ist.
Bei XDR ist sowas nicht drin; bei Bedarf könnte man sich sowas ja
oberhalb von XDR definieren.
Technical Details
Message-ID: <puenri7zx7.fsf@themroc.colibri.de>
Path: arc1-ca.pugleaf.net!rz.uni-karlsruhe.de!not-for-mail
References: <63PsNxLrHvB@compi.baltic.de> <4gqc5l$i0@news.BelWue.DE>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!rz.uni-karlsruhe.de!not-for-mail
From: hf@colibri.de (Harald Fuchs)
Newsgroups: de.comp.lang.c++
Subject: Re: ios::binary
Date: 26 Feb 1996 18:35:32 +0100
Organization: Colibri GmbH, Germany
Sender: hf@themroc.colibri.de
Message-ID: <puenri7zx7.fsf@themroc.colibri.de>
References: <63PsNxLrHvB@compi.baltic.de> <4gqc5l$i0@news.BelWue.DE>
NNTP-Posting-Host: teco10a.teco.uni-karlsruhe.de
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
In-reply-to: kuehl@uzwil.informatik.uni-konstanz.de's message of 25 Feb 1996
 19:09:41 GMT
X-WWW-Home-Page: http://www.colibri.de/~hf/
X-PGP-Public-Key: finger hf@colibri.de
X-PGP-Fingerprint: 09 4E C4 A2 B2 C5 33 1A  79 80 5D 39 BD 9B 89 39
X-Disclaimer: Kore wa Colibri no iken dewa arimasen
X-Newsreader: Gnus v5.0.9