Ben varsa:Yapılarımdaki bir değişken neden değerini tutmuyor?
type Foo struct {
bar int
}
Ve Foo üzerinde tanımlı bir yöntemi (bunu fark * Foo, sadece Foo var):
func (self Foo)incrementBar() {
self.bar++
}
Neden Foo yapma ve iki kez yöntemi çağrıldıktan sonra:
myFoo := Foo{}
myFoo.incrementBar()
myFoo.incrementBar()
, myFoo her çağrıldığında artımBar yönteminin içinde hala 0 bar çubuğudur? Yani, her seferinde artışla 2'ye ulaşmaz, her seferinde artım değeri üzerinde bir ++ işlemi yapar.
Yinelenen:
İşte konuyla ilgili iyi bir makale. Go Turu bütün bunları gayet iyi açıklıyor. Al onu. – Volker