Bonjour,
Pour parser un fichier xml j'ai besoin de définir deux functions callbacks.
Programmant en CPP j'aimerais que ces deux callbacks soient
des méthodes "protected" pour que ce soit plus "propre".
Cependant cela ne marche pas, et je suppose que cela est dû à une histoire de pointeurs de fonctions.
Je m'explique plus en détails.
Voici grosso modo mon code actuel :
Et voici à quoi j'aimerais que mon code ressemble :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 /* les deux callbacks */ void _StartElement(....) { } void _EndElement(....) { } /* mon constructeur */ ma_classe::ma_classe() { ..... XML_SetHandler(parser, _StartElement, _EndElement); .... }
Seulement cela ne marche pas, probablement un probléme de pointeurs ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 /* les deux callbacks */ void ma_classe::_StartElement(....) { } void ma_classe::_EndElement(....) { } /* mon constructeur */ ma_classe::ma_classe() { ..... XML_SetHandler(parser, _StartElement, _EndElement); .... }
Connaîteriez-vous une petite astuce pour que XML_SetHandler
recupère bien les adresses mémoires de ma_classe::_StartElement et ma_classe::End_Element ?
merci,
Partager