使用没有变量的方法结果是否使用相同数量的内存而不这样做?
例如,是这样的:
public int A()
{
...
return a;
}
if(A() == 1)
...
仍将使用相同数量的内存:
public int A()
{
...
return a;
}
int a = A();
if(a == 1)
...
我知道差异相对微乎其微,但如果我在不同的大字节数组上执行大量函数,我应该尝试这样做吗?
答案 0 :(得分:3)
我认为你的意思是if(A() == 1)
vs。:
var a = A();
if (a == 1)
答案很复杂,取决于优化设置,JIT版本,位数和CPU架构。
对于原始类型,通常没有区别。如果这是一个大型结构,可能会有所不同,特别是考虑到当前的JIT在优化结构时非常糟糕。