Avatar ·

Como definir valores padrão para campos de structs em Go?

Olá a todos! Comecei a aprender Go recentemente e me deparei com um problema. Em outras linguagens (como Python ou C#), posso facilmente definir valores padrão para campos de uma classe ou struct diretamente na declaração. Mas em Go, quando crio uma struct, todos os campos são inicializados com valores zero (0, false, string vazia), e não entendo como fazer com que, ao criar uma instância da struct, os campos recebam automaticamente meus valores. Aqui está um exemplo. Tenho uma struct para configuração de servidor: ```go type ServerConfig struct { Port int Timeout int Name string } ``` Quero que, por padrão, `Port` seja 8080, `Timeout` seja 30 e `Name` seja "MyServer". Mas quando escrevo: ```go config := ServerConfig{} fmt.Println(config.Port) // exibe 0, não 8080 ``` Recebo zeros. Tentei pesquisar na documentação, mas lá diz que Go não suporta valores padrão para campos de structs. Não existe uma maneira de fazer isso? Talvez haja algum padrão ou expressão idiomática?