各种笔记
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

17 行
900 B

  1. # 方法申明
  2. 方法的声明和普通哈数的什么类似, 只是在函数名字前面多了一个参数。
  3. 这个参数把这个方法绑定到这个参数对应的类型上
  4. 命名类型(Point)与指向它们的指针 是唯一可以出现在接收这声明处的类型
  5. 而且为防止混淆 不允许本身是指针的类型进行方法声明
  6. type P *int
  7. func (p P) f() {/* ... */} //编译错误 非法的接受者类型
  8. # 方法集
  9. 类型有一个与之相关的方法集(method set) 这决定了他是否实现了某个接口
  10. 类型T方法集包含了所有 receiver T方法
  11. 类型*T方法集包含了所有receiver T + *T方法
  12. 匿名嵌入S, T方法集包含了所有 receiver S方法
  13. 匿名嵌入*S, T方法集包含了所有receiver S + *S方法
  14. 匿名嵌入S或*S, *T方法集包含了所有receiver S+ *S方法