如何创建由另一个组成的结构

时间:2018-12-02 23:01:16

标签: go

我有一个像这样的结构:

type Docs struct {
    Methods []string
    Route string
}

然后从另一个文件导入该文件,

import tc "huru/type-creator"

并像这样使用它:

type DocsLocal struct {
    tc.Docs
}

我可以肯定tc.Docs只是DocsLocal中的一个字段,所以这是组合的情况,对吧?

如果我想创建DocsLocal的新实例,请尝试以下操作:

d:= DocsLocal{}

但是如何传递方法和路线参数?如果我这样做:

methods:= []string{"foo"}
r:="biscuit"
d:= DocsLocal{methods, r}

我得到一个错误:

  

不能将方法([]字符串)用作tc.Docs more

那么在这里使用正确的语法是什么?

1 个答案:

答案 0 :(得分:1)

你可以

d := DocsLocal{tc.Docs{[]string{"foo"}, "biscuit"}}

d := DocsLocal{Docs: tc.Docs{[]string{"foo"}, "biscuit"}}

Go Playground