Avatar ·

Como remover um elemento de map em Go: remoção por chave e limpeza de todo o map

Olá a todos! Comecei a estudar Go recentemente e me deparei com um problema ao trabalhar com map. Preciso remover um elemento de map por chave, mas não consigo encontrar a sintaxe correta. Em outras linguagens, estou acostumado a usar algo como `delete(map, key)` ou `map.remove(key)`, mas em Go isso não funciona da mesma forma. Aqui está um exemplo do meu código: ```go package main import "fmt" func main() { users := map[string]int{ "alice": 25, "bob": 30, "charlie": 35, } // Tentando remover "bob" delete(users, "bob") // Isso funciona? // Ou talvez assim? // users.remove("bob") // users["bob"] = nil? fmt.Println(users) } ``` Tentei `delete(users, "bob")` — parece que compila, mas não tenho certeza se é a maneira correta. Também me pergunto: o que acontece se tentar remover uma chave que não existe? E como limpar completamente o map sem criar um novo? Agradeço por uma explicação detalhada com exemplos. Obrigado desde já!