Go类型的实例能否更改其基础价值?

时间:2018-07-24 21:43:10

标签: go types

我可能使用了错误的单词,但是-go类型的实例可以更改其基础值吗?

那是我的天真的假设,如果我有一个像这样的小程序

type Foo string

func (f Foo) ChangeMyValue() {
    f = Foo("Hello World")
}

func main() {
    //  rand.Seed(time.Now().Unix())

    f := Foo("Nope")
    f.Hello()
    fmt.Println(f)
}

我在f = Foo("Hello World")方法中的调用ChangeMyValue将更改struct实例的值,并且程序将打印 Hello World

这不起作用。 go的类型系统是否支持更改类型的基础值的方法?

0 个答案:

没有答案