El tipo '<typename>' debe definir el operador '<determinantoperator>' que se debe usar en una expresión '<shortcircuitoperator>'

Un AndAlso Operator o un OrElse Operator usa operandos de un tipo de clase o estructura, cuando esa clase o estructura no define un operador necesario.

Dado que no se define un operador de cortocircuito (AndAlso o OrElse) directamente, debe definir los operadores lógicos y determinantes correspondientes. En la siguiente tabla se muestran los operadores necesarios.

Operador de cortocircuito Operador lógico Operador determinante
AndAlso And (operador) IsFalse (operador)
OrElse OR (operador) IsTrue (operador)

Visual Basic usa estos operadores lógicos y determinantes a fin de construir la lógica de cortocircuito para AndAlso o OrElse. Para que funcione correctamente, ambos operandos y el valor devuelto de la definición de And o Or deben ser del tipo contenedor, es decir, el tipo de la clase o estructura en la que está definiendo And o Or.

Identificador de error: BC33035

Para corregir este error

  • Defina los operadores And y IsFalse , o los operadores Or y IsTrue en la clase o estructura que se usa para el tipo de operando del operador AndAlso o OrElse . Asegúrese de que los operandos para And o Or son del tipo de la clase o estructura en la que se define.

Consulte también