ExpressionType 列舉

定義

描述運算式樹狀節點的節點類型。

public enum class ExpressionType
public enum ExpressionType
type ExpressionType = 
Public Enum ExpressionType
繼承
ExpressionType

欄位

Add 0

數值運算元的加法運算,例如 a + b,不包含溢位檢查。

AddAssign 63

數值運算元的加法複合指派運算,例如 (a += b),不包含溢位檢查。

AddAssignChecked 74

數值運算元的加法複合指派運算,例如 (a += b),不包含溢位檢查。

AddChecked 1

數值運算元的加法運算,例如 (a + b),包含溢位檢查。

And 2

位元或邏輯 AND 運算,例如 C# 中的 (a & b) 和 Visual Basic 中的 (a And b)

AndAlso 3

條件 AND 運算,此種運算只有在第一個運算元評估為 true 時才會評估第二個運算元。 它對應到 C# 中的 (a && b) 和 Visual Basic 中的 (a AndAlso b)

AndAssign 64

位元或邏輯 AND 複合指派運算,例如 C# 中的 (a &= b)

ArrayIndex 5

一維陣列中的索引運算,例如 C# 中的 array[index] 或 Visual Basic 中的 array(index)

ArrayLength 4

一種運算,用於取得一維陣列的長度,例如 array.Length

Assign 46

指派運算,例如 (a = b)

Block 47

運算式的區塊。

Call 6

方法呼叫,例如在 obj.sampleMethod() 運算式中。

Coalesce 7

表示 Null 聯合運算的節點,例如 C# 中的 (a ?? b) 或 Visual Basic 中的 If(a, b)

Conditional 8

條件運算,例如 C# 中的 a > b ? a : b 或 Visual Basic 中的 If(a > b, a, b)

Constant 9

常數值。

Convert 10

轉型或轉換作業,例如 C# 中的 (SampleType)obj 或 Visual Basic 中的 CType(obj, SampleType)。 對於數值轉換,如果轉換的值對目的型別而言太大,則不會擲回例外狀況。

ConvertChecked 11

轉型或轉換作業,例如 C# 中的 (SampleType)obj 或 Visual Basic 中的 CType(obj, SampleType)。 對於數值轉換,如果轉換的值不符合目的型別,則會擲回例外狀況。

DebugInfo 48

偵錯資訊。

Decrement 49

一元遞減運算,例如 C# 和 Visual Basic 中的 (a - 1)。 物件 a 不應該就地修改。

Default 51

預設值。

Divide 12

數值運算元的除法運算,例如 (a / b)

DivideAssign 65

數值運算元的除法複合指派運算,例如 (a /= b)

Dynamic 50

動態運算。

Equal 13

表示相等比較的節點,例如 C# 中的 (a == b) 或 Visual Basic 中的 (a = b)

ExclusiveOr 14

位元或邏輯 XOR 運算,例如 C# 中的 (a ^ b) 或 Visual Basic 中的 (a Xor b)

ExclusiveOrAssign 66

位或邏輯 XOR 複合指派運算,例如在 C# 中 (^= b)

Extension 52

延伸運算式。

Goto 53

「移至」運算式,例如 C# 中的 goto Label 或 Visual Basic 中的 GoTo Label

GreaterThan 15

「大於」比較,例如 (a > b)

GreaterThanOrEqual 16

「大於或等於」比較,例如 (a >= b)

Increment 54

一元遞增運算,例如 C# 和 Visual Basic 中的 (a + 1)。 物件 a 不應該就地修改。

Index 55

索引運算或是用於存取採用引數之屬性的運算。

Invoke 17

叫用委派或 Lambda 運算式的運算,例如 sampleDelegate.Invoke()

IsFalse 84

false 條件值。

IsTrue 83

true 條件值。

Label 56

標籤。

Lambda 18

Lambda 運算式,例如 C# 中的 a => a + a 或 Visual Basic 中的 Function(a) a + a

LeftShift 19

位元左移運算,例如 (a << b)

LeftShiftAssign 67

位元左移複合指派,例如 (a <<= b)

LessThan 20

「小於」比較,例如 (a < b)

LessThanOrEqual 21

「小於或等於」比較,例如 (a <= b)

ListInit 22

一種運算,用於建立新的 IEnumerable 物件並以項目清單將其初始化,例如 C# 中的 new List<SampleType>(){ a, b, c } 或 Visual Basic 中的 Dim sampleList = { a, b, c }

Loop 58

一種迴圈,例如 forwhile

MemberAccess 23

讀取欄位或屬性的運算,例如 obj.SampleProperty

MemberInit 24

一種運算,用於建立新的物件並初始化其中一個或多個成員,例如 C# 中的 new Point { X = 1, Y = 2 } 或 Visual Basic 中的 New Point With {.X = 1, .Y = 2}

Modulo 25

算術餘數運算,例如 C# 中的 (a % b) 或 Visual Basic 中的 (a Mod b)

ModuloAssign 68

算術餘數複合指派運算,例如 C# 中的 (a %= b)

Multiply 26

數值運算元的乘法運算,例如 (a * b),不包含溢位檢查。

MultiplyAssign 69

數值運算元的乘法複合指派運算,例如 (a *= b),不包含溢位檢查。

MultiplyAssignChecked 75

數值運算元的乘法複合指派運算,例如 (a *= b),具有溢位檢查。

MultiplyChecked 27

數值運算元的乘法運算,例如 (a * b),具有溢位檢查。

Negate 28

算術負數運算,例如 (-a)。 物件 a 不應該就地修改。

NegateChecked 30

算術負數運算,例如 (-a),具有溢位檢查。 物件 a 不應該就地修改。

New 31

一種運算,用於呼叫建構函式以建立新物件,例如 new SampleType()

NewArrayBounds 33

一種運算,用於建立新的陣列並指定每個維度的界限,例如 C# 中的 new SampleType[dim1, dim2] 或 Visual Basic 中的 New SampleType(dim1, dim2)

NewArrayInit 32

一種運算,用於建立新的一維陣列並以項目清單將其初始化,例如 C# 中的 new SampleType[]{a, b, c} 或 Visual Basic 中的 New SampleType(){a, b, c}

Not 34

位元補數或邏輯負數運算。 在 C# 中,這相當於 (~a) (適用於整數型別) 和 (!a) (適用於布林值)。 在 Visual Basic 中,則相當於 (Not a)。 物件 a 不應該就地修改。

NotEqual 35

不相等比較,例如 C# 中的 (a != b) 或 Visual Basic 中的 (a <> b)

OnesComplement 82

1 的補數運算,例如 C# 中的 (~a)

Or 36

位元或邏輯 OR 運算,例如 C# 中的 (a | b) 或 Visual Basic 中的 (a Or b)

OrAssign 70

位元或邏輯 OR 複合指派,例如 C# 中的 (a |= b)

OrElse 37

最少運算 (Short-Circuiting) 條件 OR 運算,例如 C# 中的 (a || b) 或 Visual Basic 中的 (a OrElse b)

Parameter 38

在運算式內容中定義之參數或變數的參考。 如需詳細資訊,請參閱ParameterExpression

PostDecrementAssign 80

一元後置遞減,例如 (a--)。 物件 a 應該就地修改。

PostIncrementAssign 79

一元後置遞增,例如 (a++)。 物件 a 應該就地修改。

Power 39

一種數學運算,可將數字提升為乘冪數,例如 Visual Basic 中的 (a ^ b)

PowerAssign 71

一種複合指派運算,可將數字提升為乘冪數,例如 Visual Basic 中的 (a ^= b)

PreDecrementAssign 78

一元前置遞減,例如 (--a)。 物件 a 應該就地修改。

PreIncrementAssign 77

一元前置遞增,例如 (++a)。 物件 a 應該就地修改。

Quote 40

Expression 型別之常數值的運算式。 Quote 節點可包含參數的參考,這些參數都定義在節點所表示的運算式內容中。

RightShift 41

位元右移運算,例如 (a >> b)

RightShiftAssign 72

位元右移複合指派運算,例如 (a >>= b)

RuntimeVariables 57

執行階段變數的清單。 如需詳細資訊,請參閱RuntimeVariablesExpression

Subtract 42

數值運算元的減法運算,例如 (a - b),不包含溢位檢查。

SubtractAssign 73

數值運算元的減法複合指派運算,例如 (a -= b),不包含溢位檢查。

SubtractAssignChecked 76

數值運算元的減法複合指派運算,例如 (a -= b),具有溢位檢查。

SubtractChecked 43

數值運算元的算術減法運算,例如 (a - b),具有溢位檢查。

Switch 59

切換運算,例如 C# 中的 switch 或 Visual Basic 中的 Select Case

Throw 60

擲回例外狀況的運算,例如 throw new Exception()

Try 61

try-catch 運算式。

TypeAs 44

明確參考或 Boxing 轉換,轉換若失敗,則提供 null,例如 C# 中的 (obj as SampleType) 或 Visual Basic 中的 TryCast(obj, SampleType)

TypeEqual 81

確切型別測試。

TypeIs 45

型別測試,例如 C# 中的 obj is SampleType 或 Visual Basic 中的 TypeOf obj is SampleType

UnaryPlus 29

一元正運算,例如 (+a)。 預先定義之一元正運算的結果是運算元的值,但使用者定義的實作可能會有不尋常的結果。

Unbox 62

Unbox 值型別運算,例如 MSIL 中的 unboxunbox.any 指令。

備註

如需此類型之每個列舉值的詳細資訊,請參閱 動態語言執行平臺概觀

適用於