Objekt binär schreiben und lesen



  • std troll schrieb:

    Öhh, du und viele andere Anfänger haben da immer so ein doofes Verständnisproblem was Zahlenbasen angeht. Alles im PC ist binär. Wenn da 5 steht, dann ist das bloß anders dargestellt, im Hintergrund ist aber dennoch 00000101 gespeichert.

    Es ist aber in C++ wie in x86 irrelevant, dass die Hardware binär rechnet. Davon bekommt man gar nichts mit. Die kleinste adressierbare und manipulierbare Einheit ist typischerweise so groß wie char und hat 256 verschiedene Zustände. Alles im PC ist also 256-är.



  • vielen Dank für die Antworten.
    Die Lösung war tatsächlich (*this).
    Ich habe versehntlich die gespeicherte Adresse serialisiert und nicht den Inhalt selbst...

    Also er funktioniert super, daher kann ich nicht ganz nachvollziehen, warum ich nicht einfach ohne weiteres serialisieren kann....
    Ich musste noch nicht mal die Membervariablen beim Auslesen interpritieren.
    Danke



  • Das musst du dann nicht, wenn es die Basisdatentypen(int, char, long, double etc.) sind.

    Aber pack mal einen std::string in deine Klasse und mach dein Programm mal zwischendurch aus. Also starte es neu.



  • ahso, also wenn ich einen enum, oder eine Unterklasse, oder gar nen String habe, hätte das dann komplizierterweise interpritieren müssen?

    noch eine kleine Frage, und zwar warum sagt mir die Netbeans IDE, dass folgendes Zuweisung:

    char* wert = "Hallo";
    depricated ist? (also verwaltet). Er zeigt ja dennoch auf "H" am Anfang.
    Und wie mache ich das "modern" ?
    Danke



  • Wenn dann müsste es const char * wert = "..."; heißen, denn auf einen char* kannst du auch schreibend zugreifen, was dann knallen würde.

    Und in modernem C++ wäre das std::string wert = "Hallo";

    @Nachtrag: Deprecated ist veraltet und nicht verwaltet.



  • Skym0sh0 schrieb:

    Deprecated ist veraltet und nicht verwaltet.

    Weder - noch.



  • Aber sinngemäß meistens schon. Laut Leo wäre die korrekte Übersetzung "überholt".

    Also veraltet trifft es weit besser verwaltet...



  • Ich empfinde den Schritt von ablehnen/mißbilligen zu für veraltet erklären halt als recht groß.
    Naja...


  • Mod

    @deprecated: Auch neue Sachen können deprecated werden, wenn sich heraus stellt, dass sie Mist waren.



  • TyRoXx schrieb:

    std troll schrieb:

    Öhh, du und viele andere Anfänger haben da immer so ein doofes Verständnisproblem was Zahlenbasen angeht. Alles im PC ist binär. Wenn da 5 steht, dann ist das bloß anders dargestellt, im Hintergrund ist aber dennoch 00000101 gespeichert.

    Es ist aber in C++ wie in x86 irrelevant, dass die Hardware binär rechnet. Davon bekommt man gar nichts mit. Die kleinste adressierbare und manipulierbare Einheit ist typischerweise so groß wie char und hat 256 verschiedene Zustände. Alles im PC ist also 256-är.

    Ja, das waren noch Zeiten als ich zwischen AL und AH Daten hin- und hergeschoben, XORed usw. hab. Lange her.



  • SeppJ schrieb:

    @deprecated: Auch neue Sachen können deprecated werden, wenn sich heraus stellt, dass sie Mist waren.

    Okay, ja das triffts was besser, was ihr beiden sagt.

    Können wir uns drauf einigen, dass man Deprecated Dinge einfach nach Möglichkeit nicht mehr nutzen soll?


Anmelden zum Antworten