Go でのマップ値の変更:「ペアに割り当てられません」エラーへの対処
Go で、「できる」というエラー メッセージが表示された場合マップ内のペアを変更しようとするときは、「割り当てない」という概念を理解することが重要です。アドレス可能性。
Go のマップ値はアドレス指定可能ではありません。つまり、ドット (.) 演算子を使用して値を直接割り当てることができません。これは、必要に応じてメモリ内で値を移動できる柔軟性をマップ実装に与えるための意図的な設計上の選択です。
ペアなど、アドレス指定できないマップ値を変更するには、次の 2 つのオプションがあります。
dict := make(map[string]*pair) dict["xxoo"] = &pair{5.0, 2.0} dict["xxoo"].b = 5.0
// Copy and modify dict := make(map[string]pair) dict["xxoo"] = pair{5.0, 2.0} p := dict["xxoo"] p.b = 5.0 dict["xxoo"] = p // Replace the value dict["xxoo"] = pair{5.0, 5.0}
アドレス可能性を理解し、これらの手法を使用することで、直接アドレス指定できないマップ値を効果的に変更できます。
以上がGo でアドレス指定不可能なマップ値を変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。