引用参数时方法更快吗?

rtu*_*ner 0 c# reference

有时,我得到了辅助方法,如:

private string generateReport(string doc, List<string> sheets, Blah blahblah)
{
    //doStuff()
}
Run Code Online (Sandbox Code Playgroud)

在我的代码中看到很多这个让我想知道我是不是在搞乱计算机内存 - 来回抛出参数.在基本层面上,这个问题通过使用类级别变量来解决,但在某些情况下,我可能是从一个类派生或使用另一个类的辅助方法.所以我的问题是:

使用引用是一个更好的选择吗?即

private string generateReport(ref string doc, ref List<string> sheets, ref Blah blahblah)
{
    //doStuff()
}
Run Code Online (Sandbox Code Playgroud)

什么时候应该我使用它(如果适用)?

谢谢.

Fli*_*bed 6

直接的答案是否定的.请看这个问题和答案: 哪个更快?ByVal还是ByRef?

还要记住,通过引用传递最重要的应该是设计选择.通过引用传递表明对参数所做的任何更改都将直接影响所提供的变量.仅当您要特定地查找上述行为时,如果要返回多个参数,则仅应使用此选项.

最后,如果您的代码处理不重,您不应该专注于进行非常小的性能改进,而应该专注于可读性和稳定性.