Bonjour,

J'ai une fonction d'une bibliothèque (pour l'utilisation de bibliothèques dynamiques) qui me renvoie un void* lors des appels.
La question est simple : comment puis-je retrouver le type d'origine ?
(C'est surtout pour savoir si c'est un pointeur sur une fonction ou un autre objet.)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
void execute_it(std::string name)
{
  void* ptr = dll->symbol(name.c_str()); 
  // dll est une implémentation globale d'une dll
 
  if(ptr == NULL) return;
 
  /* essais de recherche du type
   * si fonction : appel
   * sinon : rien
   */
}
Merci.