8

インターフェイスを使用して 2 つの数字を交換したいのですが、インターフェイスの概念がわかりにくいです。

http://play.golang.org/p/qhwyxMRj-c

これがコードと遊び場です。インターフェイスを使用して 2 つの入力番号を交換するにはどうすればよいですか? 2 つの構造を定義する必要がありますか?

type num struct {
    value interface{}
}

type numbers struct {
    b *num
    c *num
}

func (a *num) SwapNum(var1, var2 interface{}) {
    var a num

    temp := var1
    var1 = var2
    var2 = temp
}

func main() {
    a := 1
    b := 2
    c := 3.5
    d := 5.5

    SwapNum(a, b)
    fmt.Println(a, b) // 2 1
    SwapNum(c, d)
    fmt.Println(c, d) // 5.5 3.5
}
4

1 に答える 1