begin process at 2012 02 08 23:06:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

Adresse d'une fonction CallBack dans une classe


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Adresse d'une fonction CallBack dans une classe

samedi 3 décembre 2005 à 12:43:21 | Adresse d'une fonction CallBack dans une classe

Capa6T

Bonjour,

J'ai un petit souçis pour récupèrer l'adresse d'une fonction CallBack dans une classe.

MaClasse.h :
------------
class MaClasse
{
protected:
int CALLBACK FctCallBack(LPARAM lParam1,LPARAM lParam2);
typedef int __stdcall FonctionCallBack(LPARAM,LPARAM);
FonctionCallBack *fcb; // Pointeur vers fonction Callback
public:
MaClasse(); // Constructeur
virtual ~MaClasse(); // Destructeur
};

MaClasse.cpp :
--------------
MaClasse::MaClasse() // CONSTRUCTEUR
{
// Récupère adresse fonction CallBack
fcb=FctCallBack;   // Erreur Compilation ICI
}

MaClasse::~MaClasse() // DESTRUCTEUR
{
}

// Fonction CallBack
int CALLBACK MaClasse::FctCallBack(LPARAM lParam1,LPARAM lParam2)
{
return 0;
}


J'ai une erreur de compilation:
error C2440: '=' : cannot convert from 'int (__stdcall MaClasse::*)(long,long)' to 'int (__stdcall *)(long,long)'
       There is no context in which this conversion is possible
      
Je tourne en rond..après plusieurs tests de cast différents je ne m'en sors pas.
Est-il possible de récupèrer l'adresse d'une fonction CallBack dans une classe ?
Si oui quelle est la solution svp ?
Merci.
samedi 3 décembre 2005 à 13:37:33 | Re : Adresse d'une fonction CallBack dans une classe

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
Ce problème a déja été traité plusieurs fois. Comme ta fonction n'est pas statique, elle prend un pointeur this implicite (convention d'appel thiscall). En fait, fcb et FctCallBack ne sont donc pas de même type.
Pour que ca marche, il faudra mettre FctCallBack en static (du coup, plus de pointeur this, et plus de problème)
samedi 3 décembre 2005 à 14:19:01 | Re : Adresse d'une fonction CallBack dans une classe

Capa6T

Merci vecchio56,
J'avais un doute à ce sujet...je n'en ai plus maintenant.
samedi 3 décembre 2005 à 14:34:43 | Re : Adresse d'une fonction CallBack dans une classe

vecchio56

Administrateur CodeS-SourceS
Tout va bien, tu n'a plus qu'a passer chez le dentiste ;)
samedi 3 décembre 2005 à 14:42:27 | Re : Adresse d'une fonction CallBack dans une classe

Capa6T

lol...c'est fait !


Cette discussion est classée dans : fonction, adresse, callback, lparam, maclasse


Répondre à ce message

Sujets en rapport avec ce message

fonction de callback [ par veve33 ] Bonjour,j'aimerais savoir comment faire du callback en c pour compiler sous unix mais aussi sous windows surement a terme.Mon but etant de faire une l Utilisation d'une fonction callback [ par laurentl2000 ] Bonjour, Voici une fonction callback destinée à envoyer les titres des fenêtres IE ouvertes dans une listbox... BOOL CALLBACK EnumWindowsProc(HWND hwn Récupération d'une adresse IP avec GetAddress [ par Tribute2U ] Bjr, je cherche un moyen pour récupérer l'adresse IP saisie sur un champ de type 'IP Address'. Je sais que c'est la classe CIPAddressCtrl qui est derr Accèder à un objet depuis Fonction membre de callback statique [ par Jeffray ] Bonjour,J'ai une fonction membre statique de callback, qui correspond à une classe de fenêtre que j'enregistre.Comment faire pour transmettre à cette fonction callback en c++ [ par gbcha ] Je voudrais comprendre à quoi sert et comment marche une fonction dite "callback" ?Mercigbcha adresse d'une fonction membre d'une classe [ par gagah1 ] Salut à tous!Je voudrais avoir l'adresse mémoire d'une fonction membre d'une classe, alors que l'ISO C++ l'interdire l'accès.Je m'explique:J'ai une c Fonction InternetConnect [ par LordBob ] Bonjour tout le monde,je me pose une question, sur le fonction "InternetConnect" et plus precisement sur le second param !!!en fait il faut marqué l'a gethostbyname??? C++ [ par typhoun ] Salut,   Je dois utiliser une adresse IP pour me connecté à un serveur et pour cela j'utilise la fonction struct hostent* FAR gethostbyname(const char Prob lecture adresse mémoire [ par xmaz57000 ] Voilà je viens de recevoir un ordinateur industriel qui dispose en standard de 8 entrées TOR.Malheureusement, il n'y a aucun driver qui permet de récu CallBack dans fonction membre [ par Matt67 ] Bonjour, Je desir mettre une callback (waveInProc) dans une classe en tant que fonction membre...Comment puis-je m'y prendre, un petit exemple serait


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,543 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales