Bonjour à tous et à toutes,
Pas sur que je suis sur le bon forum...
J'ai un petit problème: l'orsque j'appel une fonction, l'adresse du parametre n'est pas l'adresse de l'objet que j'ai donné en paramètre!!
(j'utilise gcc 4.2.3 pour compiler sous debian)

la console affiche:

...
parametre avant : 0x804b4a8
[1209379096]-VERBOSE: CTasDeCartes::pushOnTop debut
parametre dedans 0x804b284
...

le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
class Card64 : public IApplication, public ICard {
[...]
};
 
 
class CCard64 : public IControler, public Card64 {
[...]
};
 
class CTasDeCartes : public IControler, public TasDeCartes {
 
    public:
[...]
         void pushOnTop ( ICard * pcard ) {
		log ( "CTasDeCartes::pushOnTop debut ", VERBOSE );
		cout << "parametre dedans " << pcard << "" << endl;		
		[...]
	}
 
[...]
 
};
l'appel:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
    CCard64 * cc64_1;
    CTasDeCartes * ctas1;
[...]//entre autre les constructions...
    cout << "parametre avant : " << cc64_1 << endl;
    ctas1->pushOnTop ( cc64_1 );