Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article fournit des remarques supplémentaires à la documentation de référence de cette API.
La méthode Add renvoie un BinaryExpression dont la propriété Method est définie pour la méthode d'implémentation. La Type propriété est définie sur le type du nœud. Si le nœud est levé, les propriétés IsLifted et IsLiftedToNull sont toutes les deux true. Sinon, ils sont false. La Conversion propriété est null.
Les informations suivantes décrivent la méthode d’implémentation, le type de nœud et si un nœud est levé.
Implémentation de la méthode
Les règles suivantes déterminent la méthode d’implémentation sélectionnée pour l’opération :
- Si soit la propriété Type de
left, soit celle derightreprésente un type utilisateur qui surcharge l’opérateur d’addition, alors la méthode MethodInfo qui représente cette surcharge est la méthode d’implémentation. - Sinon, si
left.Type etright.Type sont des types numériques, la méthode d’implémentation estnull.
Type de nœud et élevé par rapport à non-élevé
Si la méthode d’implémentation n’est pas null:
Si
left. Type etright. Le type est assignable aux types d’arguments correspondants de la méthode d’implémentation, le nœud n’est pas levé. Le type du nœud est le type de retour de la méthode d’implémentation.Si les deux conditions suivantes sont satisfaites, le nœud est levé et le type du nœud est le type nullable qui correspond au type de retour de la méthode d’implémentation :
left.Type etright.Type sont tous deux des types valeur dont au moins un est nullable et les types non nullables correspondants sont égaux aux types d'argument correspondants de la méthode d'implémentation.- Le type de retour de la méthode d’implémentation est un type valeur non nullable.
Si la méthode d’implémentation est null:
- Si
left.Type etright.Type sont tous les deux non-nullables, le nœud n’est pas soulevé. Le type du nœud est le type de résultat de l’opérateur d’ajout prédéfini. - Si
left.Type etright.Type autorisent tous deux la valeur NULL, le nœud est élevé. Le type du nœud est le type Nullable qui correspond au type de résultat de l’opérateur d’ajout prédéfini.