Mit C++ Bereiche und Container schreiben und formatieren

In diesem Artikel wird eine bessere Möglichkeit zur Bereitstellung einer konsistenten Benutzeroberfläche für das Schreiben von Bereichen und Containern in Streams aufgezeigt, mit der sich trotzdem der Operator << verwenden lässt.

Betrachten wir zunächst, was eine allgemeine Lösung anbieten sollte. Sie sollte:

  1. in der Lage sein, Bereiche und Container zu schreiben. Die Lösung sollte mit STL-ähnlichen Bereichen funktionieren und das eigentliche Schreiben der Container erleichtern. Das Schreiben von Bereichen bedeutet, dass man mit Hilfe einer [A, A + N]-Sequenz auch C-Arrays schreiben kann (A ist der Array, N ist die Größe dieses Arrays).
  2. in der Lage sein, bei Bedarf jedes Element zu umgeben. Zum Beispiel könnte man ein solches Array schreiben wollen: ‚[John, James, Corina]‘
  3. in der Lage sein, bei Bedarf auf jedes Element eine Umwandlung (Transformation) anzuwenden. Zum Beispiel möchte man die Namen seiner Angestellten schreiben, und die Nachnamen sollen dabei in Großbuchstaben erscheinen: [DOE, John; KEITH James; DYLAN, Richard] Oder man möchte ein Array mit Integern schreiben und dabei den absoluten Wert jedes Elements verwenden.
  4. vernünftige Voreinstellungen für die beiden vorangegangenen Punkte besitzen. Wenn man beispielsweise keine Transformation anwendet, sollte die Standard-Transformation das Element so drucken, wie es auch erscheint (die Identitäts-Transformation)

Durch die Kombination dieser Fähigkeiten erhält man ein leistungsfähiges Werkzeug für das Schreiben von Arrays. Alle, die jetzt noch nicht überzeugt sind, sollten sich die Beispiele am Ende dieses Artikels ansehen.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Erreichbarkeit im Weihnachtsurlaub weiterhin hoch

Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…

13 Stunden ago

Hacker missbrauchen Google Calendar zum Angriff auf Postfächer

Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…

2 Tagen ago

Bedrohungen in Europa: Schwachstellen in der Lieferkette dominieren

Hinter 84 Prozent der Zwischenfälle bei Herstellern stecken Schwachstellen in der Lieferkette. Auf dem Vormarsch…

2 Tagen ago

Bericht: Apple arbeitet an faltbarem iPad

Es kommt angeblich 2028 auf den Markt. Das aufgeklappte Gerät soll die Displayfläche von zwei…

3 Tagen ago

HPE baut Supercomputer am Leibniz-Rechenzentrum

Das System basiert auf Hardware von HPE-Cray und Nvidia. Die Inbetriebnahme erfolgt 2027.

3 Tagen ago

Bund meldet Fortschritte in der Netzversorgung

Die Bundesnetzagentur hat ihr Gigabit-Grundbuch aktualisiert. Drei von vier Haushalten sollen jetzt Zugang zu Breitbandanschlüssen…

3 Tagen ago