Articles of ir

Por que recebo um erro “não é possível atribuir” ao definir o valor para uma estrutura como um valor em um mapa?

Novo para ir. Encontrou este erro e não teve sorte em encontrar a causa ou a justificativa para isso: Se eu criar uma estrutura, obviamente posso atribuir e reatribuir os valores sem problemas: type Person struct { name string age int } func main() { x := Person{“Andy Capp”, 98} x.age = 99 fmt.Printf(“age: %d\n”, […]

Como verificar se um mapa contém uma chave?

Eu sei que posso percorrer um mapa, for k, v := range m { … } e procurar uma chave, mas existe uma maneira mais eficiente de testar a existência de uma chave em um mapa? Obrigado. Não consegui encontrar uma resposta na especificação do idioma .

Por que não é possível percorrer os mapas no pedido de veiculação?

Eu tenho uma barra de navegação como um mapa: var navbar = map[string]navbarTab{ } Onde navbarTab tem várias propriedades, itens filhos e assim por diante. Quando tento renderizar a barra de navegação (com for tabKey := range navbar ) ela aparece em uma ordem aleatória. Estou ciente de que o range classifica aleatoriamente quando é […]

Dependências e interfaces cíclicas em Golang

Eu sou um desenvolvedor de python muito tempo. Eu estava experimentando o Go, convertendo um aplicativo python existente para o Go. É modular e funciona muito bem para mim. Ao criar a mesma estrutura em Go, pareço ter erros de importação cíclicos, muito mais do que quero. Nunca tive nenhum problema de importação em python. […]

Formatar uma sequência Ir sem imprimir?

Existe uma maneira simples de formatar uma string no Go sem imprimir a string? Eu posso fazer: bar := “bar” fmt.Printf(“foo: %s”, bar) Mas quero que a string formatada seja retornada em vez de impressa, para que eu possa manipulá-la ainda mais. Eu também poderia fazer algo como: s := “foo: ” + bar Mas […]

Não é possível converter string para interface {}

Eu estou escrevendo algum código, e eu preciso dele para pegar os argumentos e passá-los através de fmt.Println (Eu quero o seu comportamento padrão, para escrever argumentos separados por espaços e seguidos por uma nova linha). No entanto, leva []interface {} mas flag.Args() retorna uma []string . Aqui está o exemplo de código: package main […]

Chamar funções com prefixo / sufixo especial

Eu tenho um pacote chamado “semeador”: package seeder import “fmt” func MyFunc1() { fmt.Println(“I am Masood”) } func MyFunc2() { fmt.Println(“I am a programmer”) } func MyFunc3() { fmt.Println(“I want to buy a car”) } Agora eu quero chamar todas as funções com o prefixo MyFunc package main import “./seeder” func main() { for k […]

Como usar pacotes personalizados em golang?

Estou tentando criar e usar um pacote personalizado no Go. É provavelmente algo muito óbvio, mas não consigo encontrar muita informação sobre isso. Basicamente, eu tenho esses dois arquivos na mesma pasta: mylib.go package mylib type SomeType struct { } main.go package main import ( “mylib” ) func main() { } Quando tento go run […]

Qual é a melhor maneira de agrupar resources estáticos em um programa Go?

Estou trabalhando em um pequeno aplicativo da web no Go que deve ser usado como uma ferramenta na máquina de um desenvolvedor para ajudar a depurar seus aplicativos / serviços da web. A interface para o programa é uma página web que inclui não apenas o HTML, mas também alguns JavaScript (para funcionalidade), imagens e […]

Como eu faço um literal * int64 no Go?

Eu tenho um tipo de estrutura com um campo *int64 . type SomeType struct { SomeField *int64 } Em algum momento do meu código, eu quero declarar um literal disso (digamos, quando eu sei que o valor deve ser 0, ou apontando para um 0, você sabe o que eu quero dizer) instance := SomeType{ […]