Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Bepaalt of een expressie is True.
U kunt uw code niet expliciet aanroepen IsTrue , maar de Visual Basic-compiler kan deze gebruiken om code te genereren op basis van OrElse componenten. Als u een klasse of structuur definieert en vervolgens een variabele van dat type in een OrElse component gebruikt, moet u deze klasse of structuur definiëren IsTrue .
De compiler beschouwt de IsTrue en IsFalse operators als een overeenkomend paar. Dit betekent dat als u een van deze definieert, u ook de andere moet definiëren.
Compilergebruik van IsTrue
Wanneer u een klasse of structuur hebt gedefinieerd, kunt u een variabele van dat type gebruiken in een For, If, Else Ifof While instructie of in een When component. Als u dit doet, vereist de compiler een operator waarmee uw type wordt geconverteerd naar een Boolean waarde, zodat deze een voorwaarde kan testen. Er wordt gezocht naar een geschikte operator in de volgende volgorde:
Een verbreidingsoperator van uw klasse of structuur naar
Boolean.Een verbreidingsoperator van uw klasse of structuur naar
Boolean?.De
IsTrueoperator in uw klas of structuur.Een vermalende conversie naar
Boolean?die geen conversie vanBooleannaarBoolean?.Een narrowing conversieoperator van uw klasse of structuur naar
Boolean.
Als u geen conversie naar Boolean of een IsTrue operator hebt gedefinieerd, geeft de compiler een fout aan.
Opmerking
De IsTrue operator kan overbelast worden, wat betekent dat een klasse of structuur het gedrag ervan opnieuw kan definiëren wanneer de operand het type van die klasse of structuur heeft. Als uw code deze operator gebruikt voor een dergelijke klasse of structuur, moet u het opnieuw gedefinieerde gedrag ervan begrijpen. Zie Operator Procedures voor meer informatie.
Voorbeeld
In het volgende codevoorbeeld wordt het overzicht gedefinieerd van een structuur die definities voor de IsFalse en IsTrue operators bevat.
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