方法的值接收者与指针接收者的区别是?

Go

  1. A.没有区别,二者可以随意互换,编译器最终会为两者生成同一份机器码
  2. B.指针接收者每次调用需要把整个结构体拷贝到堆上,性能反而比值接收者更差
  3. C.值接收者操作副本不影响原值;指针接收者可修改原值并避免拷贝
  4. D.值接收者仅可定义在指针类型上,结构体类型需要改用指针接收者才能编译通过