Golang Operator Overloading
ch verstehe, dass Golang keine Überlastung der Bediener bietet, da es der Ansicht ist, dass es die Komplexität erhöh
So möchte ich das für Strukturen direkt implementieren.
package main
import "fmt"
type A struct {
value1 int
value2 int
}
func (a A) AddValue(v A) A {
a.value1 += v.value1
a.value2 += v.value2
return a
}
func main() {
x, z := A{1, 2}, A{1, 2}
y := A{3, 4}
x = x.AddValue(y)
z.value1 += y.value1
z.value2 += y.value2
fmt.Println(x)
fmt.Println(z)
}
https: //play.golang.org/p/1U8omyF8-
Aus dem obigen Code wird dasMehrwer funktioniert wie ich will. Meine einzige Sorge ist jedoch, dass es sich um eine Wertübergabe handelt und ich daher den neu hinzugefügten Wert jedes Mal zurückgeben muss.
Gibt es eine andere bessere Methode, um zu vermeiden, dass die aufsummierte Variable zurückgegeben wird?