0

我在问自己哪种方法是处理参数的更好方法。给定这样的对象:

objet
  property1
  property2

假设一个函数需要接收它,至少是 property1 和 property2 ,那么这个更好吗?

function(param/property1, param/property2)

或这个?

function(entire_object)

我可以猜测,例如传递整个对象对性能不利,而使用参数说明了函数需要什么……另一方面,我们可以说传递一个对象可以更加动态。不知道,一起讨论吧!

4

1 回答 1

0

我可以猜测,例如传递整个对象对性能不利

这可能是错误的。您可以将对象作为引用/指针传递。

将对象作为引用/指针传递可以被认为是“传递接口”。

比较“传递接口”和“传递单个参数”,前者可能是一个更稳定的接口。可以说,您的功能实现需要更改,并且您需要一个附加值。您始终可以从界面中获取更多信息,而无需对函数签名进行任何更改。如果您传递单个参数,则情况并非如此。

传递接口的一个缺点 - 从调用者的角度来看,如果各个参数更容易获得,那么创建一个对象只是为了传递给一个函数可能会很麻烦。

于 2012-11-01T18:12:35.210 回答