Bonjour,

j'ai une classe permettant de gérer des fractions (appelée ZFraction) et j'ai du mal à comprendre la définition de l'opérateur moins unaire ci-dessous:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
ZFraction operator-(ZFraction const& a)
{
    ZFraction copie(a);
    copie*=-1; // ici je ne comprends pas 
    return copie;
}
Auparavant on a défini l'opérateur *= , méthode de la classe ZFraction, comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
ZFraction& ZFraction::operator*=(const ZFraction& a)
{
    m_num*=a.m_num;
    m_den*=a.m_den;
    reduire();
 
    return *this;
}
Ce qui voudrait dire que -1 est considéré comme fraction?

Merci pour vos éclaircissements.