我应该使用哪一个? decimal.Add()或“+”
问题描述:
我有一个问题,我找不到答案。 想象一下,我有两个十进制数。 当我想总结一个数字,为什么我应该使用?我应该使用哪一个? decimal.Add()或“+”
选项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 operator +(decimal d1, decimal d2)
{
FCallAddSub(ref d1, ref d2, 0);
return d1;
}
和Add方法:
[SecuritySafeCritical, __DynamicallyInvokable]
public static decimal Add(decimal d1, decimal d2)
{
FCallAddSub(ref d1, ref d2, 0);
return d1;
}
在IL和性能方面严格等价。
答
这两个c#都给你提供了多种方法来解决你选择你感觉更舒适的问题。我个人使用num1 + num2。
答
它们都完全一样,只是看起来不一样。
你可以使用一个你可以阅读更容易。 – Freeman 2013-02-26 09:35:49
首选+运算符或您的代码可能以每日wtf结尾。 – Guillaume 2013-02-26 09:38:02
他们会产生相同的结果,所以你可以使用你想要的。 – Alpay 2013-02-26 09:38:23