C# 我应该用哪一个?decimal.Add()或"+&引用;

C# 我应该用哪一个?decimal.Add()或"+&引用;,c#,.net,C#,.net,我有一个问题找不到答案。 假设我有两个十进制数。 当我要求和时,我应该使用哪一个,为什么要使用 备选案文1: var num1 = 10.456m; var num2 = 12.033m; var result = decimal.Add(num1, num2); 备选案文2: var num1 = 10.456m; var num2 = 12.033m; var result = num1 + num2; 他们完全一样。Decimal类重载了调用相同方法的+运算符。所以你应该用你觉得更

我有一个问题找不到答案。 假设我有两个十进制数。 当我要求和时,我应该使用哪一个,为什么要使用

备选案文1:

var num1 = 10.456m;
var num2 = 12.033m;

var result = decimal.Add(num1, num2);
备选案文2:

var num1 = 10.456m;
var num2 = 12.033m;

var result = num1 + num2;

他们完全一样。
Decimal
类重载了调用相同方法的
+
运算符。所以你应该用你觉得更可读的。我个人更喜欢第二种方法

+
操作员(由反射器提供):

和添加方法:

[SecuritySafeCritical, __DynamicallyInvokable]
public static decimal Add(decimal d1, decimal d2)
{
    FCallAddSub(ref d1, ref d2, 0);
    return d1;
}

在IL和性能方面严格等效。

这两种c#都为您提供了多种解决问题的方法,您可以选择一种更适合的方法。我个人使用num1+num2。

它们完全相同,只是外观不同。

您可以使用一个更容易阅读的。首选+运算符,或者您的代码可能会在每日wtf上结束。它们将产生相同的结果,因此您可以按自己的意愿使用。
[SecuritySafeCritical, __DynamicallyInvokable]
public static decimal Add(decimal d1, decimal d2)
{
    FCallAddSub(ref d1, ref d2, 0);
    return d1;
}