BOnjour,

Toujours dans le cadre d'un projet à rendre je dois effectuer un operateur == pour une classe appelé personnel

Je codes donc ma classe comme suite
personnel.h
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
36
37
38
39
40
41
42
43
44
45
46
47
#ifndef _personnel_H
 
#define _personnel_H
 
#include <iostream>
using namespace std;
 
 
//classe personnel
 
class personnel {
 
	protected:
	//reservation de nom pour les chars
 
	char *nom;
 
	char *prenom;
 
	int  tel;
 
 
 
	public:
	//constructeur par défaut
	personnel();
 
	//constructeur personnel
 
	personnel(char* ,char* ,int);
	//destructeur
	~personnel();
	//modifie le numéro de téléphone
	int modiftel(int);
	//verifie si la personne passé en paramètre est identique à l'objet cible
	bool operator ==(const personnel &);
	//permet l'affectation
	void operator = (  personnel &);
	//affiche 
 
    	friend ostream & operator << (ostream &, const personnel &);
	//saisie
 
	friend istream & operator >> (istream &, personnel &);
 
};
#endif
La définition de la surcharge operateur ==
personnel.cpp
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
bool Personne::operator==(const Personne& p)
 
{
 
	if(strcmp(this->nom, p.nom) == 0)
 
		if(strcmp(this->prenom, p.prenom) == 0)
 
			if(this->tel == p.tel)
 
				return true;
 
	return false;
 
}
 
 
 
void Personne::operator=(const Personne& p)
 
{
 
	this->nom	 = p.nom;
 
	this->prenom = p.prenom;
 
	this->tel	 = p.tel;
 
}
Je fais un test comme ceci:
main.cpp
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
int main()
{
 
	//constructeur spécialisé
	personnel p1("coudou","ben",223);
 
	//on teste la modification du num tel
	p1.modiftel(456);
 
	personnel p2("coudou","ben",345);
	//on compare en testant la surcharge
 
	if (p1 == p2)
	{
		cout << "p1==p2" ; 
	}
	else
	{
		cout << "p1!= p2";	
	}
 
}

Le problème est que cela ne m'affiche pas de résultat. Je n'ai rien à l'affichage alors qu'il devrait afficher p1!=p2!!

Je compares pourtant deux objets.

Où est je fais un erreur????

Je vous remercie d'avance pour votre aide.