参数传递

go语言中不管是指针、引用类型还是其他类型参数,都是值拷贝传递,区别无非是拷贝目标对象还是拷贝指针而已。(go语言学习笔记P63)

  当函数的参数类型是基本类型时,调用函数时会将参数拷贝一份传入函数,在函数中改变变量的值不会对函数外造成影响。当参数是指针或引用类型时,调用函数时会将变量的指针拷贝一份传入函数,虽然在函数中改变变量的值会影响到外部变量的值,但本质上还是值传递,因为传递的是指针的副本而不是指针本身。

你可能感兴趣的:(参数传递)