Ich möchte ein Diagramm mit verschiedenen Objekten für ein Spiel speichern. Ihre Klassen können miteinander verwandt sein oder nicht, sie können Vektoren einfacher Strukturen enthalten oder nicht.
Mit Serialisierung meine ich, dass Objekte sich selbst serialisieren, was effektiv ist, aber ich muss verschiedene Serialisierungsmethoden für verschiedene Objekte dafür schreiben.
Mit binary analysing / composing meine ich, eine neue Struktur von Parsern / Komponisten zu erstellen, die Daten für diese Objekte halten und lesen, und diese herumreichen, damit meine Objekte ihre Daten pushen / ziehen.
Ich kann auch json verwenden, aber es kann ziemlich langsam zum Lesen sein, und es ist nicht sehr effektiv, wenn es um ziemlich große Mengen von Matrizen und Zahlen geht.
Punkt für Punkt:
Das sind also drei Stimmen für Text, ein Punkt für Binär. Persönlich würde ich mit Text für alles außer Bilder gehen (und andere Daten, die "natürlich" binär sind). Dann speicher alles in einer großen Zip-Datei (ich kann mir vorstellen, dass mehrere Spiele dies oder etwas ähnliches tun).
Gute liest: Die Bedeutung von Text und Einfacher Text .
Überprüfen Sie Protokollpuffer von Google oder von Apache. Obwohl es sich um eine einfache Möglichkeit zum Schreiben von Drahtprotokollen handelt, handelt es sich im Grunde um einen Objektserialisierungsmechanismus, der Bindungen in Dutzenden von Sprachen erstellen, eine effiziente Binärdarstellung, einfache Versionierung, schnelle Leistung und eine gute Unterstützung bietet.
Wir verwenden Boost.Serialization. Ich weiß nicht, wie es neben den Samkass-Angeboten funktioniert.
Tags und Links c++ parsing serialization protocols binary