Definition des operateurs dans une classe (vc++)

Soyez le premier à donner votre avis sur cette source.

Vue 4 972 fois - Téléchargée 289 fois

Description

Apres creation d'un classe pour les nombres complexes, on redefinit tous les operateurs utiles pour les calculs(+,+=,-,-=,*,*=,/,/=,==).
Un petit test est ensuite effectue.

Source / Exemple :


class complexe
{
public:
	///////////////////////////////////////////
	// Constructeur par default
	complexe() : re(0.0), im(0.0) {}

	///////////////////////////////////////////
	// Constructeur par valeur
	complexe(double reel, double imaginaire) : re(reel), im(imaginaire) {}

	double re;
	double im;

	complexe operator+(complexe);
	void operator+=(complexe);
	complexe operator-(complexe);
	void operator-=(complexe);
	complexe operator*(complexe);
	void operator*=(complexe);
	complexe operator/(complexe);
	void operator/=(complexe);
	int operator==(complexe);

	complexe conjugue();
};

Conclusion :


Pour l'instant seules les operations complexe-complexe sont definies.
L'utilisation d'un double pour les operations doit se faire par dtoc(double).

Codes Sources

A voir également

Ajouter un commentaire Commentaire
spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 1
6 août 2006 à 20:59
Si tu fais l'opérateur ==, tu peux également faire !=
De plus, ici == renvoie un int (2 ou 4 octets) alors qu'il pourrait renvoyer un booléen, puisque c'est en C++ et non en C que tu programmes.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.