gpt4 book ai didi

scala - 何时使用按名称调用和按值调用?

转载 作者:行者123 更新时间:2023-12-04 04:50:03 26 4
gpt4 key购买 nike

我了解按名称调用和按值调用的基本概念,并且我还研究了一些示例。但是,我不太清楚何时使用按名称调用。与其他调用类型相比,按名称调用将具有显着优势或性能提升的真实场景是什么?在设计方法时选择调用类型的正确思维方式应该是什么?

最佳答案

可能解释的简单方法是

call-by-value functions compute the passed-in expression's value before calling the function, thus the same value is accessed every time. However, call-by-name functions recompute the passed-in expression's value every time it is accessed.



我一直认为这个术语是不必要的困惑。一个函数可以有多个参数,它们的名称调用和值调用状态各不相同。所以并不是一个函数是按名称调用或按值调用,而是它的每个参数可能是按名称传递或按值传递。此外,“按名称调用”与名称无关。 => Int 是与 Int 不同的类型;它是“将生成 Int 的无参数函数”与仅 Int 相比。一旦您拥有一流的功能,您就不需要发明名称调用术语来描述这一点。

关于scala - 何时使用按名称调用和按值调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19035450/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com