<logicaloperator>' 的傳回型別和參數型別必須是 '<typename>',才能在 '<shortcircuitoperator>' 運算式中使用

更新:2007 年 11 月

以不適合用於 AndAlso 運算子OrElse 運算子 的參數或傳回型別,宣告 And 運算子或 Or 運算子。

由於您未直接定義最少運算 (Short Circuit) 運算子 (AndAlso 或 OrElse),因此必須定義對應的邏輯和行列式運算子。下表會顯示必要的運算子。

最少運算運算子

邏輯運算子

行列式運算子

AndAlso

And 運算子 (Visual Basic)

IsFalse 運算子

OrElse

Or 運算子 (Visual Basic)

IsTrue 運算子

Visual Basic 會使用上述的邏輯和行列式運算子,建構 AndAlso 或 OrElse 的最少運算邏輯。若要使這個動作能夠正常運作,And 或 Or 定義中的兩個運算元和傳回值都必須具有包含型別 (Containing Type),亦即,您定義 And 或 Or 時所使用之類別或結構的型別。

錯誤 ID:BC33034

若要更正這個錯誤

  • 將運算元和傳回值的型別都變更為您在該類別或結構中定義此運算子之類別或結構的型別。

    -或-

  • 請勿將對應的最少運算運算子 (AndAlso 或 OrElse),與您在該類別或結構中定義此 And 或 Or 運算子之類別或結構的型別運算元一起使用。

請參閱

工作

HOW TO:定義運算子

HOW TO:定義轉換運算子

概念

運算子程序

Visual Basic 中的邏輯運算子和位元運算子

參考

Operator 陳述式