go函数与方法的区别

BIT_ · · 993 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

求助大神?百度过了,教程也看了,还是不明白函数与方法的区别在哪里,在我看来方法是多余的,因为你方法可以做的我函数也可以做,为什么要方法呢?下面我要打印结构体name字段,函数和方法都行,所以我为什么要用方法?求大神解惑,方法应该有更深层次的原因才存在的。 ```go // Pen 结构体 type Pen struct{ name string } // 方法 func (p Pen) pens() Pen { p.name = "nihao" return p } // 函数 func pening() Pen { var pp Pen pp.name = "wohao" return pp } func main() { p2 := pening() // 函数直接调用就行 fmt.Println(p2.name) p1 := p2.pens() // 方法还要在调用别的函数 fmt.Println(p1.name) } ```

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

993 次点击  
加入收藏 微博
7 回复  |  直到 2021-01-03 13:21:18
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传