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

Chrome 129 stopft schwerwiegende Sicherheitslöcher

Hacker können aus der Ferne Schadcode einschleusen und ausführen. Betroffen sind Chrome für Windows, macOS…

5 Stunden ago

Sicherheitslücken bei Verivox und Check24 geben Kundendaten preis

Das Datenleck betrifft den Kreditvergleich. Unbefugte haben zwischenzeitlich Zugriff auf die Kreditvergleiche anderer Kunden.

13 Stunden ago

Copilot Wave 2: Microsoft kündigt neue KI-Funktionen an

Copilot wird stärker in Microsoft 365 integriert. Neue Funktionen stehen unter anderem für Excel, Outlook,…

19 Stunden ago

Kritische RCE-Schwachstelle in Google Cloud Platform

Schwachstelle weist laut Tenable auf schwerwiegende Sicherheitslücke in Google Cloud Diensten hin, insbesondere App Engine,…

1 Tag ago

Microsoft macht Office LTSC 2024 allgemein verfügbar

Die neue Version kommt mit einem Supportzeitraum von fünf Jahren. Währenddessen erhält Office LTSC 2024…

1 Tag ago

iOS 18 schließt 33 Sicherheitslücken

Sie führen unter Umständen zur Preisgabe vertraulicher Informationen oder gar zu einem Systemabsturz. Apples KI-Dienste…

1 Tag ago