Sobes.tech
Junior — Middle

Peut-on modifier le contenu d'un tableau passé sous forme de slice pendant l'exécution du programme ?

sobes.tech IA

Réponse de l'IA

Oui, le contenu d'un tableau passé sous forme de slice peut être modifié pendant l'exécution du programme. Un slice en Go est une structure qui contient un pointeur vers un tableau, une longueur et une capacité. Les modifications des éléments du slice se reflètent dans le tableau d'origine, car le slice pointe vers ses données.

Exemple:

package main
import "fmt"

func modifySlice(s []int) {
    s[0] = 100
}

func main() {
    arr := [3]int{1, 2, 3}
    slice := arr[:]
    modifySlice(slice)
    fmt.Println(arr) // Affichera: [100 2 3]
}

Ainsi, modifier un slice modifie également le tableau d'origine.