Avatar ·

Como limpar um slice em Go? Todas as formas e armadilhas

Olá, colegas! Acabei de começar a estudar Go e me deparei com um problema que, aparentemente, deveria ser trivial, mas não consigo encontrar uma solução clara. Tenho um slice que uso ativamente em um loop para acumular dados. Após cada iteração, preciso limpar completamente esse slice para começar a preenchê-lo novamente.\n\nAqui está um exemplo simplificado do que estou fazendo:\n\n```go\npackage main\n\nimport "fmt"\n\nfunc main() {\n data := make([]int, 0, 10) // criando um slice com capacidade inicial 10\n\n for i := 0; i < 3; i++ {\n // Preenchendo o slice com dados\n for j := 0; j < 5; j++ {\n data = append(data, j)\n }\n fmt.Println("Iteration", i, "data:", data)\n\n // E aqui preciso limpar data antes da próxima iteração\n // d