Expression.ExclusiveOr Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Tworzy element reprezentujący operację BinaryExpression bitową XOR
.
Przeciążenia
ExclusiveOr(Expression, Expression, MethodInfo) |
Tworzy element, który reprezentuje operację BinaryExpression bitową |
ExclusiveOr(Expression, Expression) |
Tworzy element, który reprezentuje operację BinaryExpression bitową |
ExclusiveOr(Expression, Expression, MethodInfo)
- Źródło:
- BinaryExpression.cs
- Źródło:
- BinaryExpression.cs
- Źródło:
- BinaryExpression.cs
Tworzy element, który reprezentuje operację BinaryExpression bitową XOR
przy użyciu op_ExclusiveOr
typów zdefiniowanych przez użytkownika. Można określić metodę implementowania.
public:
static System::Linq::Expressions::BinaryExpression ^ ExclusiveOr(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression ExclusiveOr (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression ExclusiveOr (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member ExclusiveOr : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function ExclusiveOr (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression
Parametry
- left
- Expression
Element , Expression aby ustawić właściwość równą Left .
- right
- Expression
Element , Expression aby ustawić właściwość równą Right .
- method
- MethodInfo
A MethodInfo , aby ustawić właściwość równą Method .
Zwraca
WłaściwośćBinaryExpression, która ma właściwość równą ExclusiveOrNodeType wartościom , i LeftRight, i Method ustawioną na określone wartości.
Wyjątki
left
lub right
to null
.
method
nie null
jest i metoda, która reprezentuje zwraca void
wartość , nie static
jest (Shared
w Visual Basic) lub nie bierze dokładnie dwóch argumentów.
method
jest null
i XOR
operator nie jest zdefiniowany dla left
elementu . Wpisz i right
. Typu.
Uwagi
BinaryExpression Wynik ma właściwość ustawioną Method na metodę implementowania. Właściwość Type jest ustawiona na typ węzła. Jeśli węzeł zostanie zniesiony, IsLifted właściwości i IsLiftedToNull są oba true
. W przeciwnym razie są to false
. Właściwość Conversion to null
.
Poniższe informacje opisują metodę implementowania, typ węzła i to, czy węzeł został zniesiony.
Metoda implementująca
Następujące reguły określają wybraną metodę implementowania dla operacji:
Jeśli
method
nienull
jest i reprezentuje metodę niepustą (static
Shared
w Visual Basic), która przyjmuje dwa argumenty, jest to metoda implementowania.W przeciwnym razie, jeśli Type właściwość lub
left
right
reprezentuje typ zdefiniowany przez użytkownika, który przeciążaXOR
operatora, oznacza to, MethodInfo że metoda jest metodą implementowania.W przeciwnym razie, jeśli
left
. Wpisz iright
. Typ to typy całkowite lub logiczne, metoda implementowania tonull
.
Typ węzła oraz węzły podniesione i niepodniesione
Jeśli metoda implementowania nie null
jest :
Jeśli
left
. Wpisz iright
. Typ można przypisać do odpowiednich typów argumentów metody implementowania, węzeł nie jest zniesiony. Typ węzła to zwracany typ metody implementowania.Jeśli spełnione są następujące dwa warunki, węzeł zostanie zniesiony, a typ węzła to typ dopuszczający wartość null odpowiadający typowi zwracanej metody implementowania:
left
. Wpisz iright
. Typ to oba typy wartości, z których co najmniej jeden ma wartość null, a odpowiadające im typy niepuste są równe odpowiadającym typom argumentów metody implementowania.Zwracany typ metody implementowania jest typem wartości bez wartości null.
Jeśli metoda implementowania to null
:
Jeśli
left
. Wpisz iright
. Typ jest niezwiązany z wartością null, węzeł nie jest zniesiony. Typ węzła to typ wyniku wstępnie zdefiniowanegoXOR
operatora.Jeśli
left
. Wpisz iright
. Typ jest możliwy zarówno do wartości null, jak i węzeł zostanie zniesiony. Typ węzła to typ dopuszczający wartość null odpowiadający typowi wyniku wstępnie zdefiniowanegoXOR
operatora.
Dotyczy
ExclusiveOr(Expression, Expression)
- Źródło:
- BinaryExpression.cs
- Źródło:
- BinaryExpression.cs
- Źródło:
- BinaryExpression.cs
Tworzy element, który reprezentuje operację BinaryExpression bitową XOR
przy użyciu op_ExclusiveOr
typów zdefiniowanych przez użytkownika.
public:
static System::Linq::Expressions::BinaryExpression ^ ExclusiveOr(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression ExclusiveOr (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member ExclusiveOr : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function ExclusiveOr (left As Expression, right As Expression) As BinaryExpression
Parametry
- left
- Expression
Element , Expression aby ustawić właściwość równą Left .
- right
- Expression
Element , Expression aby ustawić właściwość równą Right .
Zwraca
WłaściwośćBinaryExpression, która ma właściwość równą ExclusiveOrNodeType i Left właściwości i Right ustawioną na określone wartości.
Wyjątki
left
lub right
to null
.
Operator XOR
nie jest zdefiniowany dla left
elementu . Wpisz i right
. Typu.
Przykłady
Poniższy przykład kodu przedstawia sposób tworzenia wyrażenia reprezentującego logiczną operację XOR.
// Add the following directive to your file:
// using System.Linq.Expressions;
// This expression represents an exclusive OR operation for its two arguments.
// Both arguments must be of the same type,
// which can be either integer or boolean.
Expression exclusiveOrExpr = Expression.ExclusiveOr(
Expression.Constant(5),
Expression.Constant(3)
);
// Print out the expression.
Console.WriteLine(exclusiveOrExpr.ToString());
// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(
Expression.Lambda<Func<int>>(exclusiveOrExpr).Compile()());
// The XOR operation is performed as follows:
// 101 xor 011 = 110
// This code example produces the following output:
//
// (5 ^ 3)
// 6
' Add the following directive to your file:
' Imports System.Linq.Expressions
' This expression represents an exclusive OR operation for its two arguments.
' Both arguments must be of the same type,
' which can be either integer or Boolean.
Dim exclusiveOrExpr As Expression = Expression.ExclusiveOr(
Expression.Constant(5),
Expression.Constant(3)
)
' Print the expression.
Console.WriteLine(exclusiveOrExpr.ToString())
' The following statement first creates an expression tree,
' then compiles it, and then executes it.
Console.WriteLine(
Expression.Lambda(Of Func(Of Integer))(exclusiveOrExpr).Compile()())
' The XOR operation is performed as follows:
' 101 xor 011 = 110
' This code example produces the following output:
'
' (5 ^ 3)
' 6
Uwagi
BinaryExpression Wynik ma właściwość ustawioną Method na metodę implementowania. Właściwość Type jest ustawiona na typ węzła. Jeśli węzeł zostanie zniesiony, IsLifted właściwości i IsLiftedToNull są oba true
. W przeciwnym razie są to false
. Właściwość Conversion to null
.
Poniższe informacje opisują metodę implementowania, typ węzła i to, czy węzeł został zniesiony.
Metoda implementująca
Następujące reguły określają metodę implementowania operacji:
Type Jeśli właściwość lub
right
left
reprezentuje typ zdefiniowany przez użytkownika, który przeciążaXOR
operatora, MethodInfo oznacza to, że metoda jest metodą implementowania.W przeciwnym razie, jeśli
left
. Wpisz iright
. Typ to typy całkowite lub logiczne, metoda implementowania tonull
.
Typ węzła oraz węzły podniesione i niepodniesione
Jeśli metoda implementowania nie null
jest :
Jeśli
left
. Wpisz iright
. Typ można przypisać do odpowiednich typów argumentów metody implementowania, węzeł nie jest zniesiony. Typ węzła to zwracany typ metody implementowania.Jeśli spełnione są następujące dwa warunki, węzeł zostanie zniesiony, a typ węzła to typ dopuszczający wartość null odpowiadający typowi zwracanej metody implementowania:
left
. Wpisz iright
. Typ to oba typy wartości, z których co najmniej jeden ma wartość null, a odpowiadające im typy niepuste są równe odpowiadającym typom argumentów metody implementowania.Zwracany typ metody implementowania jest typem wartości bez wartości null.
Jeśli metoda implementowania to null
:
Jeśli
left
. Wpisz iright
. Typ jest niezwiązany z wartością null, węzeł nie jest zniesiony. Typ węzła to typ wyniku wstępnie zdefiniowanegoXOR
operatora.Jeśli
left
. Wpisz iright
. Typ jest możliwy zarówno do wartości null, jak i węzeł zostanie zniesiony. Typ węzła to typ dopuszczający wartość null odpowiadający typowi wyniku wstępnie zdefiniowanegoXOR
operatora.
Dotyczy
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla