“<logicaloperator>”的返回类型和参数类型必须是“<typename>”,才能在“<shortcircuitoperator>”表达式中使用

更新:2007 年 11 月

利用了不适于在 AndAlso 运算符OrElse 运算符 中使用的参数或返回类型来声明 And 运算符或 Or 运算符。

由于未直接定义短路运算符(AndAlso 或 OrElse),因此,必须定义对应的逻辑运算符和限定性运算符。下表显示了所需的运算符。

短路运算符

逻辑运算符

限定性运算符

AndAlso

And 运算符 (Visual Basic)

IsFalse 运算符

OrElse

Or 运算符 (Visual Basic)

IsTrue 运算符

Visual Basic 使用这些逻辑运算符和限定性运算符为 AndAlso 或 OrElse 构造短路逻辑。为使这能正确起作用,And 或 Or 定义的操作数和返回值均必须属于包含类型,也即您在其中定义 And 或 Or 的类或结构的类型。

**错误 ID:**BC33034

更正此错误

  • 将操作数和返回值的类型改为您在其中定义此运算符的类或结构的类型。

    - 或 -

  • 如果操作数的类型是您在其中定义此 And 或 Or 运算符的类或结构的类型,则请勿将对应的短路运算符(AndAlso 或 OrElse)用于这些操作数。

请参见

任务

如何:定义运算符

如何:定义转换运算符

概念

运算符过程

Visual Basic 中的逻辑运算符和位运算符

参考

Operator 语句