マップのディープコピー
マップのコンテンツのコピーは、特に後続の反復のために元のマップをクリアする必要がある場合に困難になることがあります。通常、元のマップをクリアすると、スーパーマップ内のその参照もクリアされます。
マップをディープコピーするには、次のプロセスに従います:
例を示します:
for k, v := range originalMap { newMap[k] = v }
内容をコピーしたら、新しいマップへのスーパーマップの参照に影響を与えることなく、元のマップをクリアできます。 map.
疑似コードのアドレス指定例
疑似コードは、aMap をクリアしながら、aMap の内容を aSuperMap にコピーしようとします。ただし、元のマップとスーパーマップの両方を変更する delete(aMap, x) に依存しているため、うまくいきません。
これを解決するには、次のことができます。
これらの手順に従うことで、スーパーマップ内の参照を失ったり重複データを導入したりすることなく、マップをディープ コピーできます。
以上がスーパーマップ参照を保持しながらマップをディープコピーするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。