Erreur du compilateur CS1019
Opérateur unaire surchargeable attendu
Un élément semblable à un opérateur unaire surchargé a été déclaré, mais l’opérateur est manquant ou ne figure pas à l’emplacement approprié dans la signature.
Un opérateur unaire s’applique à un opérande unique. Par exemple, ++
est un opérateur unaire. Vous pouvez surcharger certains opérateurs unaires en utilisant le mot clé operator
et en spécifiant un paramètre unique du type auquel l’opérateur s’applique. Par exemple, si vous souhaitez surcharger l’opérateur ++
pour une classe définie par l’utilisateur Temperature
de façon à pouvoir écrire Temperature++
, vous pouvez l’indiquer de la façon suivante :
public static Temperature operator ++ (Temperature temp)
{
temp.Degrees++;
return temp;
}
Quand vous recevez cette erreur, vous avez déclaré un élément semblable à un opérateur unaire surchargé, sauf que l’opérateur lui-même est manquant ou ne figure pas à l’emplacement approprié dans la signature. Si vous supprimez ++
de la signature dans l’exemple précédent, vous générez l’erreur CS1019.
Le code suivant génère l’erreur CS1019 :
// CS1019.cs
public class ii
{
int i
{
get
{
return 0;
}
}
}
public class a
{
public int i;
// Generates CS1019: "ii" is not a unary operator.
public static a operator ii(a aa)
// Use the following line instead:
//public static a operator ++(a aa)
{
aa.i++;
return aa;
}
public static void Main()
{
}
}
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour