Hello,
J'ai une question surement très conne....voila le code source :
Et le résultat :
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
24
25
26
27
28
29
30
31
32
33
34
35 #include <iostream> using namespace std; class A { public: A(){ cout<<"constructeur"<<endl; var=0; } A(A &a){ cout<<"constructeur de copy"<<endl; a.var = 15; } int var; }; void fct(A a) { cout<<a.var<<endl; } int main() { A obja; obja.var = 12; fct(obja); cout<<obja.var<<endl; return 0; }
constructeur
constructeur de copy
2009118740
15
J'ai du mal à comprendre pourquoi il affiche "2009118740" et non "15" !
Que se passe t-il vraiment lors de l'appel de cette fonction ?
merci...
Partager