Maison >développement back-end >Golang >Comment implémenter des tableaux redimensionnables dans Go ?
Implémentation de tableaux redimensionnables dans Go
En tant que développeur C en transition vers Go, vous êtes peut-être habitué à utiliser la classe std::vector pour tableaux dynamiques. Dans Go, une fonctionnalité similaire peut être obtenue avec une structure de données de tranche annexable.
Approche standard
Pour créer un tableau dynamique de structures, vous pouvez définir le type de structure puis utilisez des tranches pour stocker les instances de la structure. Les tranches sont dimensionnées de manière dynamique, vous permettant d'ajouter ou de supprimer des éléments au moment de l'exécution.
Exemple d'extrait de code
type myStruct struct { b int c string } func main() { // Create an empty slice of myStruct a := []myStruct{} // Append elements to the slice a = append(a, myStruct{1, "hello"}) a = append(a, myStruct{2, "world"}) // Iterate over and print the slice for _, v := range a { fmt.Println(v) } }
Fonction clé : append()
La fonction append() est essentielle pour travailler avec des tranches dans Go. Il prend une tranche comme premier argument et un ou plusieurs éléments comme arguments restants. Il ajoute les éléments spécifiés à la tranche et renvoie une nouvelle tranche avec les éléments ajoutés.
Lectures complémentaires
Pour des informations plus détaillées sur les tranches et la fonction append() , reportez-vous à la spécification Go : https://go.dev/ref/spec#Appending_and_copying_slices
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!