Compartilhar via


Operador IsTrue (Visual Basic)

Determina se uma expressão é True.

Você não pode chamar IsTrue explicitamente no código, mas o compilador Visual Basic pode usá-lo para gerar código de cláusulas OrElse. Se você definir uma classe ou estrutura e, em seguida, usar uma variável desse tipo em uma cláusula OrElse, você deve definir IsTrue na classe ou estrutura.

O compilador considera os operadores IsTrue e IsFalse como um par correspondente . Isso significa que se você definir um deles, você deverá também definir o outro.

Uso do compilador de IsTrue

Quando você tiver definido uma classe ou estrutura, você pode usar uma variável desse tipo em um For, If, ElseIf, ou While instrução, ou em um When cláusula. Se você fizer isso, o compilador requer um operador que converte seu tipo em um Boolean para que ele possa testar uma condição de valor. Ele procura por um operador adequado na seguinte ordem:

  1. Um operador de conversão de expansão de sua classe ou estrutura para Boolean.

  2. Um operador de conversão de expansão de sua classe ou estrutura para Boolean?.

  3. O IsTrue operador em sua classe ou estrutura.

  4. Uma conversão de restrição para Boolean? que não envolve uma conversão de Boolean para Boolean?.

  5. Um operador de conversão de restrição de sua classe ou estrutura para Boolean.

Se você não tiver definido a conversão em Boolean ou um IsTrue operador, o compilador sinaliza um erro.

Dica

O operador IsTruepode ser sobrecarregado, o que significa que uma classe ou estrutura pode redefenir seu comportamento quando seu operando tem o tipo daquela classe ou estrutura.Se seu código usa esse operador em tal classe ou estrutura, esteja certo que entende seu comportamento redefinido.Para obter mais informações, consulte Procedimentos do operador (Visual Basic).

Exemplo

O exemplo de código a seguir define o contorno de uma estrutura que inclui as definições para operadores IsFalse 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

Consulte também

Tarefas

Como definir um operador (Visual Basic)

Referência

Operador IsFalse (Visual Basic)

Operador OrElse (Visual Basic)