13.9 函数和方法调用

给定函数类型 F 的表达式 f,下面的表达式使用 a1、a2、…​ an 作为参数调用 f。

f(a1, a2, /* ... */ an)

每个参数必须是一个可分配给 F 的对应参数类型的单值表达式。在调用函数之前,所有参数都将被求值。调用表达式的类型是 F 的结果类型。

方法调用类似,但方法本身被指定为接收类型的值的选择器。

math.Cos(x, y)            // 函数调用
var pt *Point
pt.Move(3.5, 5.5)         // 使用接收方 pt 的方法调用

在函数调用中,

  • 首先按照通常顺序求出函数值和参数,

  • 在求出之后,调用的参数按值传递给函数,

  • 然后调用的函数开始执行,并且

  • 当函数执行结束时,函数的返回参数按值传递回调用函数。

最后更新于