Mapping d'une méthode static vers Delphi - C++ - Programmation
MarshPosté le 28-06-2006 à 14:55:30
Voila, j'ai une dll écrite en c++. cette dll contient des belles classes c++ (stl, templates...) ainsi que des classes wrappers spéciales Delphi (qui font le mapping en convertissant, entre autres, les std::string en AnsiString)
parmis mes classes de bases, il y en a une qui possède une méthode static. Après plusieurs essais, je n'ai pas réussi à mapper cette méthode sur une class function coté delphi. J'obtient à chaque fois une AbstractError m'indiquant qu'il n'a pas trouvé la définition de ma fonction.
Après pas mal de recherches, j'ai compris que cela n'était pas possible puisque ma méthode statique n'etait pas présente dans VTable. Et comme virtual static c'est pas possible je suis obligé de passé par une fonction globale en extern "C". C'est pas très joli
Alors existe-t-il un moyen de mettre ma méthode static dans la VTable ou d'avoir une class function du coté delphi ?
Marsh Posté le 28-06-2006 à 14:55:30
Voila, j'ai une dll écrite en c++.
cette dll contient des belles classes c++ (stl, templates...) ainsi que des classes wrappers spéciales Delphi (qui font le mapping en convertissant, entre autres, les std::string en AnsiString)
parmis mes classes de bases, il y en a une qui possède une méthode static.
Après plusieurs essais, je n'ai pas réussi à mapper cette méthode sur une class function coté delphi. J'obtient à chaque fois une AbstractError m'indiquant qu'il n'a pas trouvé la définition de ma fonction.
Après pas mal de recherches, j'ai compris que cela n'était pas possible puisque ma méthode statique n'etait pas présente dans VTable. Et comme virtual static c'est pas possible je suis obligé de passé par une fonction globale en extern "C". C'est pas très joli
Alors existe-t-il un moyen de mettre ma méthode static dans la VTable ou d'avoir une class function du coté delphi ?