Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1651 connectés 

  FORUM HardWare.fr
  Programmation

  c++: classe et callback d'une classe

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

c++: classe et callback d'une classe

n°18236
SoWhatIn22
Posté le 12-03-2001 à 15:27:46  profilanswer
 

hello,
 
une petite question de c++:
 
j'écris une classe avec ses méthodes. ok.
Maintenant, je voudrais qu'une instance de cette classe puisse disposer d'une callback.
La convention d'une callback étant imposée ( type_de_retour (__stdcall *) (int toto1, etc...) )
 
Le compilo refuse de faire une callback avec une fonction membre.
Du coup, je declare une fonction non membre d'1 classe, avec la convention d'appel qui va bien,
comme amie de cette classe, et c'est ok.
SAUF que du coup, sans même que je déclare cette fonction 'static', toutes les instances de cette
classe disposeront d'une seule et même call back. J'ai essayé: si j'instancie plusieurs objets de
la classe et que je leur demande l'adresse de la callback, toutes les adresses sont en fait les même.
 
Alors il y a toujours le moyen de passer un pointeur sur l'objet dans la callback pour savoir à quel
objet doit s'appliquer la callback, mais je ne trouve pas cela tres élégant.
 
Qq1 a-t-il une autre solution ou une autre idée?

mood
Publicité
Posté le 12-03-2001 à 15:27:46  profilanswer
 

n°18249
verdoux
And I'm still waiting
Posté le 12-03-2001 à 16:11:03  profilanswer
 

Qu'est ce qui gêne ?

n°18251
kadreg
profil: Utilisateur
Posté le 12-03-2001 à 16:21:36  profilanswer
 

Qu'es-ce qui te gène ?
 
Regarde la tronche du this dans ton callback, c'est bien à chaque fois le bon objet (enfin, je crois :D ).


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°18253
SoWhatIn22
Posté le 12-03-2001 à 16:26:08  profilanswer
 

ce qui me gêne, c'est que:
.ca fait des données en plus à gérer
.il faut une protection multithread. si 2 threads veulent s'adresser à deux objets différents, c'est en fait la même fonction qu'il vont appeler, et ca peut causer des soucis (sur des bi-pro en tous cas c sur c genere des ennuis ).
 
Donc ca alourdi un peu.
C'est plus une simplification qu'une solution, que je cherche. Et au passage, c'est le même pb avec les threads: il y a incompatibilité pour une fonction entre être une fonction membre et pouvoir être executée dans un thread. La encore, je suis obligé de "sortir" la fonction dela classe et de la déclarer amie.
Les amies, c'est bien, mais bon... faut pas abuser...

n°18256
verdoux
And I'm still waiting
Posté le 12-03-2001 à 16:41:32  profilanswer
 

Si ils appellent la même sous fonction mais que celle-ci modifie des données différentes (les objets par exemples) il n'y a aucun pb.

n°18258
SoWhatIn22
Posté le 12-03-2001 à 16:48:41  profilanswer
 

oki, bon ben je continue comme ça.
je confirme que pour le moment ca tourne... c juste que g pas envie de m'appercevoir dans 2 semaines que ya 1 cas ou cela ne fonbctionne pas et devoir tout reprendre...
 
merci du point de vue éclairé :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  c++: classe et callback d'une classe

 

Sujets relatifs
CLASSE EN VB !! help !!!générer une librairie dll à partir d'une classe C++ sous windows
[VC++ 6.0 MFC] tres urgent, je recherche une classe sur les sockets[Visual C++] classe CString
Plus de sujets relatifs à : c++: classe et callback d'une classe


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR