IsTrue 運算符 (Visual Basic)

判斷表示式是否為 True。

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

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

IsTrue 的編譯程式使用

當您定義類別或結構時,可以在、If、 Else If或 While 語句或 子句中使用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

另請參閱