1

これが私が見ているスニペットです:

var t txn
t.c = c
err := c.read(&t.req)

t.req だけでなく &t と書かなければならないのはなぜですか?

4

1 に答える 1

6

アンパサンドを常に使用する必要はありません。あなたの例では、ポインターを要求する c.read の署名に依存します(*などの型の前*MyStruct)。&値のアドレスを返し、それへのポインターを提供するため、&t.req読み取りの署名を満たします。

詳細については、ポインターに関する FAQとAddress 演算子に関する仕様を参照してください。

于 2013-03-19T18:40:58.547 に答える