Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
'L’opérateur operator' doit avoir au moins un paramètre de type classe
Remarques
L’opérateur surchargé ne dispose pas d’un paramètre de type de classe.
Vous devez passer au moins un paramètre par référence (pas à l’aide de pointeurs, mais de références) ou par valeur pour pouvoir écrire « a < b » (a et b étant de type classe A).
Si les deux paramètres sont des pointeurs, il s’agit d’une comparaison pure des adresses de pointeur et n’utilise pas la conversion définie par l’utilisateur.
Example
L’exemple suivant génère l’erreur C2803 :
// C2803.cpp
// compile with: /c
class A{};
bool operator< (const A *left, const A *right); // C2803
// try the following line instead
// bool operator< (const A& left, const A& right);