Sdílet prostřednictvím


Expression.AddChecked Metoda

Definice

Vytvoří BinaryExpression , která představuje aritmetickou operaci sčítání, která má kontrolu přetečení.

Přetížení

Name Description
AddChecked(Expression, Expression)

Vytvoří BinaryExpression , která představuje aritmetickou operaci sčítání, která má kontrolu přetečení.

AddChecked(Expression, Expression, MethodInfo)

Vytvoří BinaryExpression , která představuje aritmetickou operaci sčítání, která má kontrolu přetečení. Metodu implementace je možné zadat.

AddChecked(Expression, Expression)

Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs

Vytvoří BinaryExpression , která představuje aritmetickou operaci sčítání, která má kontrolu přetečení.

public:
 static System::Linq::Expressions::BinaryExpression ^ AddChecked(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression AddChecked(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member AddChecked : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function AddChecked (left As Expression, right As Expression) As BinaryExpression

Parametry

left
Expression

A Expression nastavit Left vlastnost rovná se.

right
Expression

A Expression nastavit Right vlastnost rovná se.

Návraty

ABinaryExpression, který má vlastnost rovna AddCheckedNodeType a Left a Right vlastnosti nastaveny na zadané hodnoty.

Výjimky

left nebo right je null.

Operátor sčítání není definován pro left. Zadejte a right. Typ.

Poznámky

Výsledek BinaryExpressionMethod vlastnost nastavena na implementovací metodu. Vlastnost Type je nastavena na typ uzlu. Pokud je uzel zvednut, IsLifted a IsLiftedToNull vlastnosti jsou obě true. Jinak jsou false. Vlastnost Conversion je null.

Následující informace popisují implementovanou metodu, typ uzlu a informace o tom, jestli je uzel zvednut.

Implementace metody

Následující pravidla určují metodu implementace operace:

  • Type Pokud vlastnost buď left nebo right představuje uživatelem definovaný typ, který přetíží operátor sčítání, MethodInfo který představuje tuto metodu je implementovací metoda.

  • V opačném případě pokud left.Type a right.typ jsou číselné typy, implementovaná metoda je null.

Typ uzlu a zvednutí versus neschycený typ uzlu

Pokud implementovaná metoda není null:

  • Pokud left.Typ a right.Typ lze přiřadit k odpovídajícím typům argumentů implementující metody, uzel není zvednut. Typ uzlu je návratový typ implementové metody.

  • Pokud jsou splněny následující dvě podmínky, uzel je zvednut a typ uzlu je typ s možnou hodnotou null, který odpovídá návratu typu implementované metody:

    • left. Typ a right. Typ jsou oba hodnotové typy, z nichž alespoň jeden je nulovatelné, a odpovídající ne-nulovatelné typy jsou rovny odpovídajícím typům argumentů implementační metody.

    • Návratový typ implementované metody je nenulový typ hodnoty.

Pokud implementovaná metoda je null:

  • Pokud left.Typ a right.Typ jsou oba nenullovatelné, uzel není zvednut. Typ uzlu je typ výsledku předdefinovaného operátoru sčítání.

  • Pokud jsou left.Typ a right.Typ oba nulovatelné, uzel je zvednut. Typ uzlu je typ s možnou hodnotou null, který odpovídá typu výsledku předdefinovaného operátoru sčítání.

Platí pro

AddChecked(Expression, Expression, MethodInfo)

Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs
Zdroj:
BinaryExpression.cs

Vytvoří BinaryExpression , která představuje aritmetickou operaci sčítání, která má kontrolu přetečení. Metodu implementace je možné zadat.

public:
 static System::Linq::Expressions::BinaryExpression ^ AddChecked(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression AddChecked(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression AddChecked(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member AddChecked : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function AddChecked (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression

Parametry

left
Expression

A Expression nastavit Left vlastnost rovná se.

right
Expression

A Expression nastavit Right vlastnost rovná se.

method
MethodInfo

A MethodInfo nastavit Method vlastnost rovná se.

Návraty

ABinaryExpression, který má vlastnost rovna AddCheckedRightNodeTypeLefta a vlastnosti Method nastaveny na zadané hodnoty.

Výjimky

left nebo right je null.

method není null a metoda, která představuje vrací void, není static (Shared v jazyce Visual Basic) nebo nebere přesně dva argumenty.

method je null a operátor sčítání není definován pro left. Zadejte a right. Typ.

Poznámky

Výsledek BinaryExpressionMethod vlastnost nastavena na implementovací metodu. Vlastnost Type je nastavena na typ uzlu. Pokud je uzel zvednut, IsLifted a IsLiftedToNull vlastnosti jsou obě true. Jinak jsou false. Vlastnost Conversion je null.

Následující informace popisují implementovanou metodu, typ uzlu a informace o tom, jestli je uzel zvednut.

Implementace metody

Metoda implementace operace je zvolena na základě následujících pravidel:

  • Pokud method není null a představuje non-void, static (Shared v jazyce Visual Basic), která přebírá dva argumenty, je to implementace metody pro uzel.

  • V opačném případě, pokud Type vlastnost buď left nebo right představuje uživatelem definovaný typ, který přetíží operátor sčítání, MethodInfo který představuje tuto metodu je implementovací metoda.

  • V opačném případě pokud left.Type a right.typ jsou číselné typy, implementovaná metoda je null.

Typ uzlu a zvednutí versus neschycený typ uzlu

Pokud implementovaná metoda není null:

  • Pokud left.Typ a right.Typ lze přiřadit k odpovídajícím typům argumentů implementující metody, uzel není zvednut. Typ uzlu je návratový typ implementové metody.

  • Pokud jsou splněny následující dvě podmínky, uzel je zvednut a typ uzlu je typ s možnou hodnotou null, který odpovídá návratu typu implementované metody:

    • left. Typ a right. Typ jsou oba hodnotové typy, z nichž alespoň jeden je nulovatelné, a odpovídající ne-nulovatelné typy jsou rovny odpovídajícím typům argumentů implementační metody.

    • Návratový typ implementované metody je nenulový typ hodnoty.

Pokud implementovaná metoda je null:

  • Pokud left.Typ a right.Typ jsou oba nenullovatelné, uzel není zvednut. Typ uzlu je typ výsledku předdefinovaného operátoru sčítání.

  • Pokud jsou left.Typ a right.Typ oba nulovatelné, uzel je zvednut. Typ uzlu je typ s možnou hodnotou null, který odpovídá typu výsledku předdefinovaného operátoru sčítání.

Platí pro