共用方式為


IsTrue 運算符 (Visual Basic)

判斷表示式是否為 True

您無法在程式代碼中明確呼叫 IsTrue ,但 Visual Basic 編譯程式可以使用它從 OrElse 子句產生程序代碼。 如果您定義類別或結構,然後在 子句中使用 OrElse 該類型的變數,則必須在該類別或結構上定義 IsTrue

編譯程式會將 IsTrueIsFalse 運算符視為 相符的配對。 這表示,如果您定義其中一個,您也必須定義另一個。

IsTrue 的編譯程式使用

當您定義類別或結構時,可以在、IfElse IfWhile 語句或 子句中使用When該類型的For變數。 如果您這樣做,編譯程式會要求運算元將類型 Boolean 轉換成值,以便測試條件。 它會依下列順序搜尋適當的運算子:

  1. 轉換運算子從類別或結構擴大為 Boolean

  2. 轉換運算子從類別或結構擴大為 Boolean?

  3. 類別 IsTrue 或結構的運算符。

  4. 縮小轉換 Boolean? ,不涉及從 Boolean 轉換成 Boolean?

  5. 從類別或結構 Boolean到的縮小轉換運算元。

如果您尚未定義對 或 IsTrue 運算符的任何轉換Boolean,編譯程式會發出錯誤訊號。

備註

IsTrue運算符可以多載,這表示當類別或結構具有該類別或結構的型別時,可以重新定義其行為。 如果您的程式代碼在這類類別或結構上使用這個運算符,請務必瞭解其重新定義的行為。 如需詳細資訊,請參閱 運算符程式

範例

下列程式代碼範例會定義結構的大綱,其中包含和 IsTrue 運算子的定義IsFalse

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

另請參閱