0
以下に示すように、参照によって構造型のインタフェースを渡す必要があります。 struct型変数へのインタフェースのポインタは使用できないので、te
の値を10
に変更するにはどうすればよいですか?golangでの参照による構造型のインターフェースの受け渡し方法は?
package main
import (
"fmt"
)
func another(te *interface{}) {
*te = check{Val: 10}
}
func some(te *interface{}) {
*te = check{Val: 20}
another(te)
}
type check struct {
Val int
}
func main() {
a := check{Val: 100}
p := &a
fmt.Println(*p)
some(p)
fmt.Println(*p)
}
ありがとうございます!
P.Sインタフェースへのポインタの渡し方はあまり良いことではありません。あなたがそれを処理する良い方法であるかもしれないことを教えてください。
Goには、参照渡しの概念はありません。 – Volker
@Volker:用語の誤用のために申し訳ありませんが、あなたは質問の私の意図を持っていることを願って – re3el
あなたはポインタを使用する必要があります参照渡しで似て何かを行うには。 –