15/12/2006, 10:34
Oui le prototype de ta fonction devrait retourner quelque chose ... mais le compilateur aurait du au minimum te sortir un avertissement non?
je lirai de plus près la suite mais le mieux quand tu passes une structure à une fonction est de la passer par référence. Cela évite la recopie.
ou
en effet ta structure temoins est :
or le type bool est en fait un int, donc 4 octets. ta structure fait donc 12 octets. un pointeur ã©tant sur 4 octets ã©galement (sur un pc 32bits), ã§a fait 8 octets de moins ã allouer lors du passage de paramã¨tres.
en revanche si tu avais utilisã© le type bool, alors ta structure ne ferait plus que 3 octets, donc le passage par rã©fã©rence ne se justifie plus. (le type bool n'ã©tant disponible qu'ã partir de vc++5, je ne sais pas sur les autres compilateurs).
Je chipote pour pas grand chose, mais c'est une bonne habitude à prendre
edit: J'en profite pour signaler un bug.
si tu consultes une fiche (petit bouton 'V'), la fenêtre qui s'ouvre n'est pas modale par rapport à la fenêtre mère. Si on laisse donc cette fenêtre ouverte et qu'on clique à nouveau sur le bouton 'V', on se retrouve avec 2 fois la même fiche ouverte. Le problème c'est que le bouton 'Fermer' de la première fiche ouverte ne fonctionne plus^^ ...
je lirai de plus près la suite mais le mieux quand tu passes une structure à une fonction est de la passer par référence. Cela évite la recopie.
Code CPP :
bool creerfonctiontemoins(hwnd hwnd,hwnd *hwndfille, temoins *temoins, wparam wparam);ou
Code CPP :
bool creerfonctiontemoins(hwnd hwnd,hwnd *hwndfille, temoins &temoins, wparam wparam);en effet ta structure temoins est :
Code CPP :
struct temoins
{
bool couv;
bool liste;
bool fiche;
};or le type bool est en fait un int, donc 4 octets. ta structure fait donc 12 octets. un pointeur ã©tant sur 4 octets ã©galement (sur un pc 32bits), ã§a fait 8 octets de moins ã allouer lors du passage de paramã¨tres.
en revanche si tu avais utilisã© le type bool, alors ta structure ne ferait plus que 3 octets, donc le passage par rã©fã©rence ne se justifie plus. (le type bool n'ã©tant disponible qu'ã partir de vc++5, je ne sais pas sur les autres compilateurs).
Code CPP :
struct temoins
{
bool couv;
bool liste;
bool fiche;
};Je chipote pour pas grand chose, mais c'est une bonne habitude à prendre

edit: J'en profite pour signaler un bug.
si tu consultes une fiche (petit bouton 'V'), la fenêtre qui s'ouvre n'est pas modale par rapport à la fenêtre mère. Si on laisse donc cette fenêtre ouverte et qu'on clique à nouveau sur le bouton 'V', on se retrouve avec 2 fois la même fiche ouverte. Le problème c'est que le bouton 'Fermer' de la première fiche ouverte ne fonctionne plus^^ ...




il faut que j'arrange ã§a ! le programme doit certainement planter ã ce niveau.
au passage j'ai aussi ajouté l'icône utilisée pour créer la fenêtre parent).



