Création de copies complètes de cartes dans Go
Bien que vous puissiez créer manuellement une copie d'une carte, il peut être plus pratique d'utiliser des -dans des fonctions ou des bibliothèques.
Intégré Fonctions
Malheureusement, il n'existe pas de fonction intégrée spécifiquement pour faire des copies de cartes arbitraires dans Go.
Bibliothèques et packages
import ( "bytes" "encoding/gob" "fmt" ) func main() { ori := map[string]int{ "key": 3, "clef": 5, } // Encode the original map var mod bytes.Buffer enc := gob.NewEncoder(&mod) err := enc.Encode(ori) if err != nil { fmt.Println("Failed to encode map:", err) return } // Decode the encoded map into a new variable (deep copy) var cpy map[string]int dec := gob.NewDecoder(&mod) err = dec.Decode(&cpy) if err != nil { fmt.Println("Failed to decode map:", err) return } // Modify the copied map to demonstrate they are independent cpy["key"] = 2 fmt.Println("Original map:", ori) fmt.Println("Copied map:", cpy) }
En utilisant l'une de ces approches, vous pouvez facilement créer des copies complètes de cartes dans Go.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!