小编qbu*_*fer的帖子

Go /可选参数中有多个构造函数?

我想知道是否有一种方法可以像在Java中那样在Go中实现多个构造函数(具有相同的函数名)。另一个选择可能是只有一个带有可选参数的构造函数,但是我不确定如何准确地做到这一点。

这似乎类似于我正在尝试做的

type Query struct {
    TagsQuery string
    PageQuery string
}

// First Constructor
func NewQuery(TagsQuery string) Query {
    return Query{
        TagsQuery: TagsQuery,
        PageQuery: "0", // default to first page
    }
}

// Second Constructor
func NewQuery(TagsQuery string, PageQuery string) Query {
    return Query{
        TagsQuery: TagsQuery,
        PageQuery: PageQuery,
    }
}
Run Code Online (Sandbox Code Playgroud)

第一个构造函数采用一个参数TagsQuery,默认PageQuery0。第二个构造函数采用两个参数:TagsQueryPageQuery

constructor go

4
推荐指数
1
解决办法
205
查看次数

标签 统计

constructor ×1

go ×1