Bonjour à tous,
Alors voilà, j'ai une problématique touchant au langage C++ (mais j'utilise Qt)
Voici mon cas :
J'ai une QTableWidget et en parallèle un tableau de structures. Chaque colonne de la QTableWidget correspond à une variable de la structure et chaque ligne correspond à une structure du tableau. La QTableWidget permet de remplir mon tableau de structure.
Mon but maintenant est de pouvoir stocker ce tableau de structure dans un fichier et de pouvoir la récupérer. Cela serait facile si dans la structure il y avait que des int, char, bool, char[x], etc.. Le problème c'est qu'il y a aussi des chaines de caractères de taille aléatoire.
En exemple, prenons la structure suivante :
Pour la stocker (En utilisant l'objet QFile)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 typedef struct s_test { int a; char b; char c[10]; } t_test;
Pour la récupérer (Toujours en utilisant QFile)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 t_test test; file.write((const char*)&test, sizeof(t_test));
Tout cela marche parfaitement mais est ce possible de pouvoir faire de même avec une structure contenant une variable c de type char* ou char[] ou même de type QString ou *QString?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 t_test test; file.read((char*)&test, sizeof(t_test));
Ou bien, autre solution, je pourrais à la place de stocker mes chaines de caractères directement dans ma structure, je pourrai y stocker un index qui représenterai une clé d'une QMap ou std::map qui serait prototypé comme cela :
Reste à savoir si je pourrai la stocker ou non? Même problème..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 QMap<int; char*> map; ou QMap<int; char[]> map; ou QMap<int; QString> map; ou QMap<int; *QSrting> map;
En espérant avoir été le plus clair possible.
Merci d'avance.
Partager