Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Bestimmt, ob ein Ausdruck ist True.
Sie können den Code nicht explizit aufrufen IsTrue , aber der Visual Basic-Compiler kann ihn verwenden, um Code aus OrElse Klauseln zu generieren. Wenn Sie eine Klasse oder Struktur definieren und dann eine Variable dieses Typs in einer OrElse Klausel verwenden, müssen Sie diese Klasse oder Struktur definieren IsTrue .
Der Compiler betrachtet die IsTrue Operatoren und IsFalse Operatoren als übereinstimmenes Paar. Dies bedeutet, dass Sie, wenn Sie eine davon definieren, auch die andere definieren müssen.
Compilerverwendung von IsTrue
Wenn Sie eine Klasse oder Struktur definiert haben, können Sie eine Variable dieses Typs in einer For, If, , Else Ifoder Anweisung oder While in einer When Klausel verwenden. Wenn Sie dies tun, erfordert der Compiler einen Operator, der den Typ in einen Boolean Wert konvertiert, damit er eine Bedingung testen kann. Es sucht nach einem geeigneten Operator in der folgenden Reihenfolge:
Ein Erweiterungskonvertierungsoperator von Ihrer Klasse oder Struktur auf
Boolean.Ein Erweiterungskonvertierungsoperator von Ihrer Klasse oder Struktur auf
Boolean?.Der
IsTrueOperator für Ihre Klasse oder Struktur.Eine schmale Konvertierung, in
Boolean?die keine Konvertierung vonBooleanzuBoolean?.Ein schmaler Konvertierungsoperator von Der Klasse oder Struktur auf
Boolean.
Wenn Sie keine Konvertierung in Boolean oder einen IsTrue Operator definiert haben, signalisiert der Compiler einen Fehler.
Hinweis
Der IsTrue Operator kann überladen werden, was bedeutet, dass eine Klasse oder Struktur ihr Verhalten neu definieren kann, wenn der Operand den Typ dieser Klasse oder Struktur aufweist. Wenn Ihr Code diesen Operator für eine solche Klasse oder Struktur verwendet, stellen Sie sicher, dass Sie das neu definierte Verhalten verstehen. Weitere Informationen finden Sie unter Operatorprozeduren.
Beispiel
Im folgenden Codebeispiel wird die Gliederung einer Struktur definiert, die Definitionen für die und IsTrue Operatoren IsFalse enthält.
Public Structure p
Dim a As Double
Public Shared Operator IsFalse(ByVal w As p) As Boolean
Dim b As Boolean
' Insert code to calculate IsFalse of w.
Return b
End Operator
Public Shared Operator IsTrue(ByVal w As p) As Boolean
Dim b As Boolean
' Insert code to calculate IsTrue of w.
Return b
End Operator
End Structure