CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

C++ : Classe et Callback

dnob700
dnob700
Niveau 10
26 mai 2005 à 23:11:39

une question simple :

j´ai une classe définit comme ça :

class graphics
{
public:
graphics();
~graphics();

private:
HWND hWnd;
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
};

et dans graphics::graphics()
wcex.lpfnWndProc = ( WNDPROC)graphics::WndProc;
pour spécifier la procédure WndProc comme gestionnaire de message pour la fenêtre que j´ouvre.
Mais il me dit que la fonction n´existe pas ce qui ne m´étonen qu´a moitié.
Si quelqu´un a uen idée pour faire marcher ça ( ou alors j´abandonen l´idée de le faire dans une classe, ce qui sera plus simple mais ne me permettra que de gérer une seul fenêtre.

Ruffi
Ruffi
Niveau 9
26 mai 2005 à 23:27:36

J´ai deja eu le meme probleme: il ne veux pas utiliser la fonction membre de callback.
Finalement, j´avai vu 3 solutions :

1) Faire la classe sous forme de singleton, comme l´a fait loulou dans son moteur YES ( voir son tutorial sur developper.com), et utiliser une fonctions static te retournant le pointeur vers la fonction.

2) Bidouillage de la version precedente : toujours une fonction static, mais au lieu d´utiliser l´unique instance du singleton, tu créé un instance static afin de renvoyer le pointeur vers la fonction.

3) Ne pas encapsuler le callback. Je m´etait promis de l´utiliser en tout dernier recours.

J´utilise la 1 car je n´ai qu´un seul fenetrage. Mais un ami qui ne voulais pas utiliser de singleton utilise la solution 2, n´ayant pas trouvé autre chose.

dnob700
dnob700
Niveau 10
27 mai 2005 à 00:05:14

au final on se retrouve toujours à utiliser une seul fonction pour toute les instances ce qui est pas terribles. Dans ce cas je crois que pour l´instant je vais zapper la coté class, m´arrangé pour que ça marche avec une seul fenêtre et après peut-être j´y reviendrais en mode multi-fenêtre.

le singleton je ne connait pas du tout, ça veut dire que toutes les instance de la classe pointe vers le même objet ? c´estjustement un truc qu´il m´aurait fallu il y a quelques temps, bon je vais chercher.

merci pour tes pistes de recherches, et je vous donnerais bientot ( peut-être) des nouvelles de mon avancement.

Ruffi
Ruffi
Niveau 9
27 mai 2005 à 00:12:03

Si tu ne connais pas les singletons, je te conseille de lire cet article sur les design patern :
http://www.games-creators.org/wiki/Les_Design_Patterns_-_Partie_1/4#Singleton

Ruffi
Ruffi
Niveau 9
27 mai 2005 à 03:23:30

L´avis de LaurentUSA ( vous connaissez le bouquin " programmez vos jeux avec DirectX"? ben c´est de lui) à propos des singletons :
http://blogs.games-creators.org/index.php/plus_naze_tu_meurs

:honte:

gollumkawder
gollumkawder
Niveau 10
27 mai 2005 à 17:36:05

C´est vraiment de Laurent Testud ce blog ? J´avias discuté une fois avec lui, il me semblait pas aussi cassant, ça m´étonne beaucoup..

gollumkawder
gollumkawder
Niveau 10
27 mai 2005 à 17:38:07

ça m´étonne définitivement, beaucoup trop obscene

Kouic
Kouic
Niveau 9
28 mai 2005 à 06:05:12

" L´avis de LaurentUSA ( vous connaissez le bouquin " programmez vos jeux avec DirectX"? ben c´est de lui) à propos des singletons :
http://blogs.games-creato[...]/plus_naze_tu_meurs "

J´ai jamais lu un article aussi nul, si ce texte a pour but d´expliquer pourquoi l´auteur n´appreci pas les singletons c´est loupé a 100%. Il n´y a que les affiramtions non argumentées sur un fond de crise profonde d´adolecent " toulemondeestnazesautmoi"; on croirait que c´est ecrit par un commercial ou une personne de 14 ans.

[LoCkLeSs]
[LoCkLeSs]
Niveau 10
28 mai 2005 à 10:31:12

Entierement d´accord avec Kouic, je trouve cet article vraiment nul, et l´autre par la même occasion...

gollumkawder
gollumkawder
Niveau 10
28 mai 2005 à 11:05:20

Si il s´agit vraiment de lui je ne puis qu´approuver Kouic aussi, même si il s´agit d´une " plaisanterie" elle n´est pas du tout drôle..

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment