E2015 Opérateur non applicable à ce type d'opérande (Delphi)
Remonter à Messages d'erreur et d'avertissement (Delphi)
Ce message d'erreur est donné lorsqu'un opérateur ne peut pas s'appliquer sur les opérandes pour lesquelles il était spécifié, par exemple si un opérateur booléen s'applique à un pointeur.
program Produce; var P : ^Integer; begin if P and P^ > 0 then Writeln('P pointe sur un nombre supérieur à 0'); end.
Un programmeur C++ n'était pas clair dans ce programme sur la précédence d'opérateur en Delphi, P n'est pas une expression booléenne et la comparaison doit être mise entre parenthèses.
program Solve; var P : ^Integer; begin if (P <> nil) and (P^ > 0) then Writeln('P pointe sur un nombre supérieur à 0'); end.
Si nous comparons explicitement P à nil et utilisons des parenthèses, le compilateur sera satisfait.