gpt4 book ai didi

go - 了解 GO 变量赋值

转载 作者:数据小太阳 更新时间:2023-10-29 03:45:59 25 4
gpt4 key购买 nike

我是 GO 的新手,正在尝试使用 aws-sdk 构建函数 我有这样的东西

    input := &rds.CreateDBClusterSnapshotInput{
// removed for brevity
}

result, err := svc.CreateDBClusterSnapshot(input)
if err != nil {
// removed for brevity
}

input = &rds.ModifyDBClusterSnapshotAttributeInput{
// removed for brevity
}

当我尝试构建时,出现此错误

cannot use &rds.ModifyDBClusterSnapshotAttributeInput literal (type *rds.ModifyDBClusterSnapshotAttributeInput) as type *rds.CreateDBClusterSnapshotInput in assignment

我的作业有什么问题?

最佳答案

正如@Sergio Tulentsev 所指出的,您正在将 ModifyDBClusterSnapshotAttributeInput 类型分配给变量 input,即 CreateDBClusterSnapshotInput 类型。

会有一些解决方案来处理这个问题,但最简单的方法是为每个类型结构创建一个方法,为 input 返回一个兼容的类型,就像这样;

func (createInput CreateDBClusterSnapshotInput) ReturnInput() {
return createInput.input // assuming that there are a input type your create
}

如果您不想为每个结构创建一个具有相同功能的方法,您可以创建一个基类型,让您的两个结构扩展该类型,然后为该基类型构建一个方法。

关于go - 了解 GO 变量赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57540983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com