Compartir a través de


Expression.AddChecked Método

Definición

Crea un objeto BinaryExpression que representa una operación de suma aritmética con comprobación de desbordamiento.

Sobrecargas

AddChecked(Expression, Expression)

Crea un objeto BinaryExpression que representa una operación de suma aritmética con comprobación de desbordamiento.

AddChecked(Expression, Expression, MethodInfo)

Crea un objeto BinaryExpression que representa una operación de suma aritmética con comprobación de desbordamiento. Se puede especificar el método de implementación.

AddChecked(Expression, Expression)

Source:
BinaryExpression.cs
Source:
BinaryExpression.cs
Source:
BinaryExpression.cs

Crea un objeto BinaryExpression que representa una operación de suma aritmética con comprobación de desbordamiento.

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

Parámetros

left
Expression

Expression en el que se va a establecer la propiedad Left.

right
Expression

Expression en el que se va a establecer la propiedad Right.

Devoluciones

BinaryExpression cuya propiedad NodeType es AddChecked y cuyas propiedades Left y Right se establecen en los valores especificados.

Excepciones

left o right es null.

No hay ningún operador de suma definido para left.Type y right.Type.

Comentarios

El resultado BinaryExpression tiene la Method propiedad establecida en el método de implementación. La Type propiedad se establece en el tipo del nodo. Si se levanta el nodo, las IsLifted propiedades y IsLiftedToNull son true. De lo contrario, son false. La propiedad Conversion es null.

En la siguiente información se describe el método de implementación, el tipo de nodo y si se levanta un nodo.

Método de implementación

Las reglas siguientes determinan el método de implementación para la operación:

  • Si la Type propiedad de o leftright representa un tipo definido por el usuario que sobrecarga el operador de suma, el MethodInfo que representa ese método es el método de implementación.

  • De lo contrario, si leftes . Escriba y right. El tipo son tipos numéricos, el método de implementación es null.

Tipo de nodo y elevación frente a no elevado

Si el método de implementación no nulles :

  • Si leftes . Escriba y right. El tipo se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se levanta. El tipo del nodo es el tipo de valor devuelto del método de implementación.

  • Si se cumplen las dos condiciones siguientes, se levanta el nodo y el tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de valor devuelto del método de implementación:

    • left. Escriba y right. El tipo son tipos de valor de los que al menos uno acepta valores NULL y los tipos no que aceptan valores NULL correspondientes son iguales a los tipos de argumento correspondientes del método de implementación.

    • El tipo de valor devuelto del método de implementación es un tipo de valor que no acepta valores NULL.

Si el método de implementación es null:

  • Si leftes . Escriba y right. El tipo no acepta valores NULL, el nodo no se levanta. El tipo del nodo es el tipo de resultado del operador de suma predefinido.

  • Si leftes . Escriba y right. El tipo admite valores NULL y se levanta el nodo. El tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de resultado del operador de suma predefinido.

Se aplica a

AddChecked(Expression, Expression, MethodInfo)

Source:
BinaryExpression.cs
Source:
BinaryExpression.cs
Source:
BinaryExpression.cs

Crea un objeto BinaryExpression que representa una operación de suma aritmética con comprobación de desbordamiento. Se puede especificar el método de implementación.

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

Parámetros

left
Expression

Expression en el que se va a establecer la propiedad Left.

right
Expression

Expression en el que se va a establecer la propiedad Right.

method
MethodInfo

MethodInfo en el que se va a establecer la propiedad Method.

Devoluciones

Objeto BinaryExpression cuya propiedad NodeType es AddChecked y cuyas propiedades Left, Right y Method se establecen en los valores especificados.

Excepciones

left o right es null.

method no es null y el método que representa devuelve void, no es static (Shared en Visual Basic) o no toma exactamente dos argumentos.

method es null y el operador de adición no está definido para left.Type y right.Type.

Comentarios

El resultado BinaryExpression tiene la Method propiedad establecida en el método de implementación. La Type propiedad se establece en el tipo del nodo. Si se levanta el nodo, las IsLifted propiedades y IsLiftedToNull son true. De lo contrario, son false. La propiedad Conversion es null.

En la siguiente información se describe el método de implementación, el tipo de nodo y si se levanta un nodo.

Método de implementación

El método de implementación de la operación se elige en función de las reglas siguientes:

  • Si method no null es y representa un método no void( staticShared en Visual Basic) que toma dos argumentos, es el método de implementación para el nodo.

  • De lo contrario, si la Type propiedad de o rightleft representa un tipo definido por el usuario que sobrecarga el operador de suma, el MethodInfo que representa ese método es el método de implementación.

  • De lo contrario, si leftes . Escriba y right. El tipo son tipos numéricos, el método de implementación es null.

Tipo de nodo y elevación frente a no elevado

Si el método de implementación no nulles :

  • Si leftes . Escriba y right. El tipo se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se levanta. El tipo del nodo es el tipo de valor devuelto del método de implementación.

  • Si se cumplen las dos condiciones siguientes, se levanta el nodo y el tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de valor devuelto del método de implementación:

    • left. Escriba y right. El tipo son tipos de valor de los que al menos uno acepta valores NULL y los tipos no que aceptan valores NULL correspondientes son iguales a los tipos de argumento correspondientes del método de implementación.

    • El tipo de valor devuelto del método de implementación es un tipo de valor que no acepta valores NULL.

Si el método de implementación es null:

  • Si leftes . Escriba y right. El tipo no acepta valores NULL, el nodo no se levanta. El tipo del nodo es el tipo de resultado del operador de suma predefinido.

  • Si leftes . Escriba y right. El tipo admite valores NULL y se levanta el nodo. El tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de resultado del operador de suma predefinido.

Se aplica a