Go语言 为函数参数使用任意类型的结构[重复]

syqv5f0l  于 5个月前  发布在  Go
关注(0)|答案(2)|浏览(40)

此问题在此处已有答案

Generic Functions in Go(3个答案)
15天前关闭
我想把一个任意类型的结构体传递给golang中的一个函数,像这样:

func Function(t) {
    var VariableOfTypeT t
    var SliceOfTypeT []t
}

字符串
我不知道t使用什么类型,我试着像这样使用interface{}

func Function(t interface{}) {
    var VariableOfTypeT t
    var SliceOfTypeT []t
}


但它不工作,它说t (variable of type interface{}) is not a type

33qvvth1

33qvvth11#

使用泛型

func Func[t any](req t) t {
    return req
}

func TestA(t *testing.T) {
    fmt.Println(Func[int](1))
}

字符串

yr9zkbsy

yr9zkbsy2#

回到我的问题的代码,答案是:

func Function[t any]() {
    var VariableOfTypeT t
    var SliceOfTypeT []t
}

字符串
这个电话是:

Function[TypeStruct]()

相关问题