Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Determina se un'espressione è True.
Non è possibile chiamare IsTrue in modo esplicito nel codice, ma il compilatore di Visual Basic può usarlo per generare codice da OrElse clausole. Se si definisce una classe o una struttura e quindi si usa una variabile di tale tipo in una OrElse clausola , è necessario definire IsTrue in tale classe o struttura.
Il compilatore considera gli IsTrue operatori e IsFalse come coppia abbinata. Ciò significa che, se ne definisci una, devi definire anche l'altra.
Uso del compilatore di IsTrue
Dopo aver definito una classe o una struttura, è possibile usare una variabile di tale tipo in un'istruzione For, IfElse If, o While in una When clausola . In questo caso, il compilatore richiede un operatore che converte il tipo in un Boolean valore in modo che possa testare una condizione. Cerca un operatore appropriato nell'ordine seguente:
Operatore di conversione di tipo widening dalla classe o dalla struttura a
Boolean.Operatore di conversione di tipo widening dalla classe o dalla struttura a
Boolean?.IsTrueOperatore nella classe o nella struttura.Conversione di tipo narrowing in
Boolean?che non comporta una conversione daBooleanaBoolean?.Operatore di conversione di tipo narrowing dalla classe o dalla struttura a
Boolean.
Se non è stata definita alcuna conversione in Boolean o un IsTrue operatore, il compilatore segnala un errore.
Annotazioni
L'operatore IsTrue può essere sottoposto a overload, il che significa che una classe o una struttura può ridefinirne il comportamento quando il relativo operando ha il tipo di tale classe o struttura. Se il codice usa questo operatore in una classe o una struttura di questo tipo, assicurarsi di comprenderne il comportamento ridefinito. Per altre informazioni, vedere Operator Procedures.
Esempio
Nell'esempio di codice seguente viene definita la struttura di una struttura che include le definizioni per gli IsFalse operatori e IsTrue .
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