comment rendre les structures de données (comme les arbres, les graphiques) persistantes en C++?comment rendre les structures de données persistantes en C++?
0
A
Répondre
3
En général, vous devrez sérialiser la structure afin de pouvoir l'écrire dans un fichier ou une base de données. Si vous avez une structure personnalisée, vous devrez écrire la méthode pour sérialiser et désérialiser (c'est-à-dire écrire et lire dans la structure). Sinon, si vous avez utilisé une structure d'une bibliothèque, il existe peut-être déjà des méthodes de (sérialisation).
par ex. Une liste liée peut sérialiser comme une chaîne comme suit: [1,2,3,4,5]
4
Essayez Google Protocol Buffers ou Boost serialization library.
1
struct S {
/* ... */
};
//...
ofstream out("temp.aux");
S s;
char* c = reinterpret_cast<char*>(&s);
out << sizeof(s);
for(int i = 0; i < sizeof(s); ++i) {
out << c[i];
}
out.close();
// ...
ifstream in("temp.aux");
int size;
in >> size;
char* r = new char[size];
for(int i = 0; i < size; ++i) {
in >> r[i];
}
S* s = reinterpret_cast<S*>(r);
in.close();
rapide et sale = D
Questions connexes
- 1. Structures de données persistantes dans C++
- 2. Sérialisation structures de données persistantes/fonctionnels
- 3. Rendre les données persistantes dans Android
- 4. Rendre les applications Java Swing persistantes
- 5. Comment trier les données persistantes?
- 6. Structures de données C#
- 7. fondamentales Structures de données en C#
- 8. Structures de données multidimensionnelles en C#
- 9. Alternatives de données persistantes utilisant C#?
- 10. Structures de données persistantes efficaces pour la base de données relationnelle
- 11. Rendre les erreurs de sortie Firebug quelque part persistantes
- 12. Données persistantes avec Javascript
- 13. API Python C et données persistantes en mémoire?
- 14. Utiliser memset sur les structures en C++
- 15. Effacer les données persistantes d'Eclipse/Simulator
- 16. Structures de données - analyse asymptotique (C++)
- 17. Méthode de filtrage pour les structures de données C++
- 18. Octet mou dans les structures en C
- 19. Comment marshaller des structures en C#?
- 20. C++ nouvel héritage d'opérateur et structures de données en ligne
- 21. Quelles sont les structures de données dans Objective-C?
- 22. Comment initialiser des structures imbriquées en C++?
- 23. Structures de type de données en PHP?
- 24. Organiser les structures de données MySQL
- 25. Sérialisation de structures complexes en C++
- 26. Données NSDictionary non persistantes
- 27. Comment les structures fonctionnent-elles en Java?
- 28. Initialisation d'un tableau de structures en C#
- 29. Structures de données distribuées en Java
- 30. structures de répertoires C++
'Boost.serialization'? – kennytm
Que voulez-vous dire par «persistant»? Voulez-vous dire l'écrire sur le disque? Le garder en vie après la fonction dans laquelle il a été créé? Autre chose? –
J'aurais pensé que cela signifiait une structure de données persistantes immuable, comme dans le cas des langages fonctionnels. –