一般来说,使用堆栈变量或临时成员变量更好(性能)?
我有一个“实时”调用的函数,并且需要一些临时变量(各种数据类型)。是否更好地使用堆栈变量(即在函数中)或在类中使用私有成员变量?
答案 0 :(得分:2)
我的直觉是堆栈变量会更快,但这是一个真正的微优化。您必须对其进行分析才能确定。
答案 1 :(得分:2)
如果只在方法内部需要它们,请将它们作为本地方法变量保存在方法中。这主要不是速度问题(尽管“ldloc”可能比“ldarg0,ldfld”组合更省力) - 而是:范围:它减少了对象的大小,并且允许重新进入而不会混淆。
另请注意:并非所有本地方法变量都在堆栈上; p