php中文网

在 Go 语言中,如何在不同文件中为同一个 struct 添加方法?

php中文网

在 go 语言中跨文件定义“类”

在 go 语言中,struct 可以作为类的模拟,而方法是与 struct 关联的函数。通常,定义一个 struct 的方式是:

// 定义 struct
type mystruct struct {
    // 成员变量
}

// 为 struct 添加方法
func (m mystruct) methodname() {
    // 方法体
}

对于第一个问题,在同一文件中先定义 struct 再定义方法是一种常见的约定。然而,go 允许你在同一包中的不同文件中为 struct 添加方法。

对于第二个问题,是的,即使在不同的文件中,也可以为引入的 struct 添加方法。只需遵循以下语法:

// 在另一个文件中导入 struct
import "path/to/mystruct"

// 为 struct 添加方法
func (m mystruct.MyStruct) methodName2() {
    // 方法体
}

这样,methodname2 方法将与 mystruct struct 关联,可以在程序中使用。

以上就是在 Go 语言中,如何在不同文件中为同一个 struct 添加方法?的详细内容,更多请关注php中文网其它相关文章!