在这个奇怪的示例中,有人创建了一个实际上只是一个字符串的新类型:

type CustomType string

const (
        Foobar CustomType = "somestring"
)

func SomeFunction() string {
        return Foobar
}

但是,此代码无法编译:

不能将Foobar(CustomType类型)用作返回参数中的类型字符串

如何修复SomeFunction,使其能够返回Foobar("omestring")的字符串值?

推荐答案

Convert将值转换为字符串:

func SomeFunction() string {
        return string(Foobar)
}

Go相关问答推荐

Wamtime Memory中的‘Offset’是什么?Read?

我怎样才能改进这个嵌套逻辑以使其正常工作并提高性能

这是go语言gin提供的关于TypeEngine和RouterGroup的问题

golang testscript .txtar 语法,用于 stderr 或 stdout 中包含的文本

调用库和直接操作效率有区别吗?

htmx 表单 + gin 无法正确读取请求正文

Go - 永远停止带有上下文的循环

为什么 net/http 不遵守超过 30 秒的超时持续时间?

对 CSV 进行单元测试失败

如何在 Golang 中打印 2 列表?

Golang 创建一个带有处理程序的模拟数据库并使用接口调用数据库

设置 graphql 的最大文件上传大小(golang)

如何使用泛型将接口转换为指定类型

使用 package`regexp` 查找 Golang 中的所有 mactch 子字符串,但得到意外结果

io.Pipe 使用困难

如何在循环中旋转图像以便在 golang 中创建 GIF?

在 Go 中将指针传递给函数的正确方法是什么,以便我可以读取和/或修改指针表示的值?

Golang API 的 HTTPS

如何在 Go 中使用 Pact 返回错误请求(400、500)?

在 go (1.18) 的泛型上实现多态的最佳方法是什么?