Sérialiser une classe qui contient une chaîne std :: string

Je ne suis pas un c++ expert, mais j'ai sérialisé choses une couple de fois dans le passé. Malheureusement, cette fois, je suis en train de sérialiser une classe qui contient une std::string, je crois comprendre que c'est un peu comme de la sérialisation d'un pointeur.

Je peux écrire la classe dans un fichier et de le lire à nouveau. Tous les int les champs sont bien, mais le std::string champ donne une adresse en dehors des limites d'erreur", sans doute parce que les points de données qui n'est plus là.

Est-il un standard solution pour cela? Je ne veux pas revenir à des tableaux de char, mais au moins je sais qu'ils travaillent dans cette situation. Je peux fournir le code si nécessaire, mais j'espère que j'ai expliqué mon problème.

Je suis la sérialisation par la coulée de la classe à un char* et l'écrire dans un fichier avec fstream. La lecture est évidemment tout l'inverse.

source d'informationauteur iwasinnamuknow