constructeur de copie OR operator= ?
	
	
		Mon problème est simple, dans le code ci dessous, je ne comprends pas pourquoi à la ligne indiquée dans main, le constructeur de copie est appelé plutôt que la méthode 'operator=' de la classe ... 
1 - Le constructeur de copie est censé n'intervenir qu'en cas de d'initialisation d'un objet : alors pourquoi b est concidéré non initialisé ? 
( il est déclaré à la ligne du dessus, donc un constructeur par defaut a déjà fait le boulo non ?)
2 - Enfin, que faudrait il pour que la méthode operator= soit appelée à cet endroit plutôt que le constructeur de copie ?
	Code:
	
| 12
 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
 36
 37
 38
 39
 
 | #include <iostream>
using namespace std;
 
class point
{ int x, y;
public :
point (int abs=0,int ord=0){ 
	x=abs; 
	y=ord;
}
point (const point &p){ 
	x=p.x; 
	y=p.y;
}
~point(){}
point operator=(const point &p);
point symetrique();
}
 
point point::symetrique(){
	point res;
	res.x = -x;	res.y = -y;
	return res;
}
 
point operator=(const point &p){
	x=p.x; 
	y=p.y;
	return *this;
}
 
int main(){
 
point a(1,3), b;
 
b = a.symetrique();  // <------ICI
 
return 0;
} | 
 Merci d'avance :D