Compilerfehler CS0019
Aktualisiert: Juli 2008
Fehlermeldung
Der Operator "Operator" kann nicht auf Operanden vom Typ "Typ" und "Typ" angewendet werden.
Operator 'operator' cannot be applied to operands of type 'type' and 'type'
Ein binärer Operator wird auf Datentypen angewendet, für die er nicht konzipiert ist. Sie können beispielsweise nicht den ||-Operator für Zeichenfolgen verwenden und den ==-Operator mit einem struct-Typ, es sei denn, der Operator wird dadurch explizit überladen.
Beispiel
In diesem Beispiel muss bedingte Logik außerhalb des ConditionalAttribute angegeben werden. An das ConditionalAttribute kann nur ein vordefiniertes Symbol übergeben werden.
Im folgenden Beispiel wird CS0019 generiert.
// CS0019.cs
// compile with: /target:library
using System.Diagnostics;
public class MyClass
{
[ConditionalAttribute("DEBUG" || "TRACE")] // CS0019
public void TestMethod() {}
// OK
[ConditionalAttribute("DEBUG")]
public void TestMethod2() {}
}
Siehe auch
Referenz
Operatoren (C#-Programmierhandbuch)
Änderungsprotokoll
Date |
Versionsgeschichte |
Grund |
---|---|---|
Juli 2008 |
Text zu "==-Operator und -Strukturen" hinzugefügt. |
Korrektur inhaltlicher Fehler. |