|
Page : 1 2 Page Précédente | |
Auteur | Sujet : pointeur de fonction membre d'une classe |
Publicité | Posté le 12-06-2004 à 18:55:48 |
Taz bisounours-codeur | void (*pf)(void)
|
cricri_ | Merci Maître ! |
cricri_ | Bon, ça fonctionne pour cet example, mais là c'est une autre paire de manche ...
Message édité par cricri_ le 13-06-2004 à 16:41:06 |
Taz bisounours-codeur | tu fais chier avec ton code et ses windoseries vomitives .... maintenant ton pfDlgffdlùmhglùmjfdqlhjslkmhjsfdlkmhl c'est un membre d'instance, il va pas se matérialiser comme ça ... un bon point pour le message à la con de VC à 400km de la plaque (p->*(p->pfDlggflmgqjrfpogheqrgokhvqdrykothzorenb-yzot))( hDlg, uMsg, wParam, lParam)
Message édité par Taz le 13-06-2004 à 17:26:34 |
cricri_ | vi, s'pas grave ... je me débrouillerai autrement ... |
Taz bisounours-codeur | de quoi ? je viens de" te donner la solution ! |
cricri_ | ben pfDlg est matérialisé à partir du moment où un objet de la clase compressor existe, et que ce pointeut a été initialisé précédemment : pfDlg = &CCompressor::CompressorProc;
|
Taz bisounours-codeur | dans la définition d'une fonction membre
|
cricri_ | ok, c'est plus clair pour moi, le pb c'est que c'est dans une fonction statique, donc là c'est p qui devrait me rattacher le pointeur à l'instance, enfin c'est tout ce que j'ai il me semble. |
Publicité | Posté le 13-06-2004 à 17:44:54 |
Taz bisounours-codeur |
|
cricri_ | c'est bien mon cas ça, ce pointeur de fonction est utilisé dans une fonction membre statique, par contre son initialisation est effectuée dans une fonction membre.
|
Taz bisounours-codeur | et comment veut tu que ça soit possible ? |
cricri_ | ce que je ne comprends pas c'est pourquoi ce n'est pas possible, car si je remplace le pointeur de fonction par la fonction ça marche.
|
Taz bisounours-codeur | ben une fonction membre statique n'est rattachée à aucune instance. une fonction membre non statique l'est. ce sont 2 choses bien différentes .| t'as pas l'air de comprendre ces concepts Message édité par Taz le 13-06-2004 à 18:15:59 |
cricri_ | sissi j'ai bien compris, mais puisque dans cette fonction statique je récupère un pointeur sur cette instance, p en l'occurence, je ne pige pas pourquoi je peux faire :
Message édité par cricri_ le 13-06-2004 à 18:23:10 |
Taz bisounours-codeur | parce que. et si t'appelles une fonction statique avec un instance, t'as un gros problème |
strobo My words are made of silence |
--------------- "Je suis si intelligent que mon cerveau est mon deuxième organe favori". |
Taz bisounours-codeur | et ? |
cricri_ | je n'ai pas le choix, c'est une windowserie ... les fonctions appelées à la création d'une boîte de dialogue ne peuvent pas être des fonctions membres, donc il faut appeler une fonction statique ou non membre, dans mon cas c'est une fonction statique, on passe l'instance (this) en paramètre que l'on récupère dans la fonction statique afin d'appeler la fonction membre ...
Message édité par cricri_ le 13-06-2004 à 18:37:29 |
Taz bisounours-codeur | ben dans les fonctions callback non template, on mets souvent un argument genre *userdata, comme ça ton cb est appelé avec et là tu peux travailler. sinon, t'es foutu |
cricri_ | vi, y a ça, mais il est déjà utilisé pour passer l'instance (this).
|
Taz bisounours-codeur | et ben si tu passe l'instances, il est ou le problème : rien ne t'empeche de faire une fonction statique avec en paramètre une instance |
cricri_ | Mais c'est bien ce qui était fait, pourtant j'avais tjs cette erreur ! |
Taz bisounours-codeur | non, c'est pas ce qui était fait |
cricri_ | Ah ? bon, je récapitule alors, voilà ce que j'ai fait :
Message édité par cricri_ le 13-06-2004 à 19:27:42 |
Taz bisounours-codeur | et tu persistes et signes ... débrouilles toi tout seul |
cricri_ | ???
Message édité par cricri_ le 13-06-2004 à 19:57:03 |
Taz bisounours-codeur | j'aimerais juste que tu arrêtes de balancer tes windowseries
|
Taz bisounours-codeur | surtout que tu t'entêtes à balancer tes immondices sans prendre en compte mes réflexions : le problème est le même qu'au début |
cricri_ | ok, malheureusement mon pb est lié à ce contexte ...
|
Taz bisounours-codeur | tant pis pour toi, je t'ai pourtant filé la solution |
strobo My words are made of silence |
--------------- "Je suis si intelligent que mon cerveau est mon deuxième organe favori". |
Taz bisounours-codeur |
c'est parce que je te fais pas un rapport tous les jours que j'apprends pas. je suis arrivé sur le forum il n'y a pas si longtemps. et j'apprends tous les jours, pas sur le forum évidemment. je vois pas pourquoi tu essaies de m'approprier ce genre de pensée |
cricri_ |
|
Taz bisounours-codeur | je te dis que ton sdlhgqsdlkhgsdlkghklqghqslkghlfqghklqgqdlghlqdghi c'est un membre, alors écris le comme un membre |
cricri_ | T'es vraiment le pire des chi*nt, mais t'es génial !!! |
Taz bisounours-codeur |
j'aime pas qu'on me fasse répéter |
cricri_ | vi, maintenant que j'ai compris je réalise que tu m'avais donné la solution, maintenant à coup de hjdsqmiuiazeadjkldjlkzdlz, pas facile non plus ... pire que des windauberies ...
|
Taz bisounours-codeur | ben flfhdfhqfhflmdhfsqdhmlfqsdfsq c'est aussi compréhensible de prime abord que pfdl |
Publicité | Posté le |
Page : 1 2 Page Précédente |
Sujets relatifs | |
---|---|
equivalent classe builder | [CSS] plusieur feuilles de styles en fonction d'un choix |
Fonction non bloquante sous telnet | fonction split |
Saisir le nom que l'on veut attribuer à une instance de classe | [resolu]Ais je bien passer les arguments par adresse à ma fonction ? |
Comment appeler une fonction à l'aide d'un pointeur sur cette fonction | fonction pour connexion serveur + regex |
[Websphere] fonction split() de la classe String non implémenté ? | [C++] Pointeur de fonction sur membre d'une classe |
Plus de sujets relatifs à : pointeur de fonction membre d'une classe |