You find yourself in a complex aspect of the function definition syntax in Go. You cannot have an argument without a name, and you can name the argument int, but func f(x, y, z Type)a label to declare all three type variables Type. For example, it func f(int, x string)declares connectively fthat takes two lines, one of which is called int.
package main
import "fmt"
func f(int, x string) {
fmt.Println("int is:", int)
fmt.Println("x is:", x)
}
func main() {
f("foo", "bar")
}
,
int is: foo
x is: bar
, . , , , , , , , .
, , int *StructObj, *StructObj int reply. , net/rpc , 0, a *StructObj. .