Schreiben und Formatieren von Bereichen und Containern in C++

Der Writer

Der Writer legt fest, auf welche Art die Umgebungen der Elemente geschrieben werden. Es gibt drei Umgebungen:

  • Das Präfix (prefix): wird vor allen Elementen eines Arrays geschrieben.
  • Der Element-Schluss (after element): wird nach jedem Element geschrieben (mit Ausnahme des letzten Elements).
  • Das Suffix (suffix): wird nach allen Elementen eines Arrays geschrieben.

Zur Formatierung dieser Umgebungen müssen die Writer-Klassen drei Funktionen bereitstellen:


void write_prefix( streamOut)
void write_after_element( streamOut)
void write_suffix( streamOut)

Man kann zwar auch eine eigene Writer-Klasse erstellen, doch dürften die beiden bereits vorhandenen Klassen ausreichend sein:

  • basic_range_writer ist der Default-Writer. Er schreibt keine Präfixe und ein Komma nach jedem Element, wobei das Suffix aus einer Leerstelle besteht. Er schreibt Elemente wie: John, James, Corina .
  • range_writer erlaubt das Verwenden von Präfix, Element-Schluss und Suffix. Zum Beispiel können die folgenden Elemente geschrieben werden: [John, James, Corina] oder {John}, {James}, {Corina}.

Die Transformation

Die Transformation ermöglicht es, jedes einzelne Element zu transformieren. Wie bereits erwähnt, kann es sich dabei um einen Funktor oder eine Funktion handeln, wobei zwei Parameter erforderlich sind: der Stream, in den geschrieben wird, und das Objekt, das geschrieben wird. Die in Listing A gezeigte Default-Transformation schreibt das Element unverändert.

Man kann aber auch eigene, komplexere Transformationen erstellen. Zum Beispiel könnte man eine Transformation einrichten, die jedem Element ein Präfix entsprechend seinem Index zuweist, wie in Listing B dargestellt.

Mit Listing B können folgende Arrays geschrieben werden:

  • [1] John, [2] James, [3] Corina‘ (PrefixByIndex-Transformation)
  • ‚{ [1] John and [2] James and [3] Corina }‘ (PrefixByIndex-Transformation plus ein Writer ( „{ „, “ und „, “ }“) )

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

KI-Modell „Made in Germany“

Telekom bietet als erstes Unternehmen kommerzielles Angebot mit Teuken-7B von OpenGPT-X.

1 Woche ago

Studie: Mitarbeiterverhalten verursacht IT-Sicherheitsrisiken

Zur Arbeitserleichterung umgehen Mitarbeiter unter anderem Cybersicherheitsrichtlinien. Dazu gehört wie Wiederverwendung von Kennwörtern für geschäftliche…

1 Woche ago

Lichtgeschwindigkeit für generative KI

Optiktechnologie könnte elektrische Verbindungen in Rechenzentren ersetzen und so Geschwindigkeit und Energieeffizienz für KI erheblich…

1 Woche ago

Meta kündigt neues Rechenzentrum für 10 Milliarden Dollar an

Es entsteht im US-Bundesstaat Louisiana. Meta sichert damit den Rechenbedarf für seine KI-Dienste.

1 Woche ago

Autonomes Fahren: Deutsche sehen eher Risiken

Weniger Lärm und ein besserer Verkehrsfluss sind die einzigen Vorteile, der die Mehrheit der Bevölkerung…

1 Woche ago

Jeder zweite hat Probleme mit Internetanbieter

Laut EY haben innerhalb eines Jahres 22 Prozent der Haushalte ihren Provider gewechselt – nirgendwo…

2 Wochen ago