赞
踩
在Go语言中,方法和函数是两个不同的概念,尽管它们在某些方面有相似之处。下面是它们的主要区别:
- // 函数
- func add(a, b int) int {
- return a + b
- }
-
- // 方法
- type Calculator struct {
- Result int
- }
-
- func (c *Calculator) Add(a, b int) {
- c.Result = a + b
- }
- // 函数调用
- result := add(2, 3)
-
- // 方法调用
- calc := Calculator{}
- calc.Add(2, 3)
3.关联的数据:
- // 函数没有关联的数据
- func printMessage(message string) {
- fmt.Println(message)
- }
-
- // 方法关联了Calculator类型的数据
- func (c *Calculator) PrintResult() {
- fmt.Println(c.Result)
- }
- // 函数声明
- func add(a, b int) int {
- return a + b
- }
-
- // 方法声明
- func (c *Calculator) Add(a, b int) {
- c.Result = a + b
- }
总体而言,方法是一种特殊类型的函数,它们与某种数据类型关联。这种关联使得方法更容易访问和操作与其关联的数据。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。