Perguntas com a marcação «go»

Go é uma linguagem de programação de código aberto. É digitado estaticamente, com uma sintaxe vagamente derivada de C, adicionando gerenciamento automático de memória, segurança de tipo, alguns recursos de digitação dinâmica, tipos internos adicionais, como matrizes de comprimento variável (chamadas fatias) e mapas de valores-chave, além de um grande biblioteca padrão.

5
Converta um float64 em um int no Go
Como converter um float64 em um int no Go? Eu sei que o strconvpacote pode ser usado para converter qualquer coisa de ou para uma string, mas não entre tipos de dados onde um não é uma string. Sei que posso usar fmt.Sprintfpara converter qualquer coisa em string e depois …
124 go 

3
Acesse a resposta HTTP como string em Go
Gostaria de analisar a resposta de uma solicitação da web, mas estou tendo problemas para acessá-la como string. func main() { resp, err := http.Get("http://google.hu/") if err != nil { // handle error } defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) ioutil.WriteFile("dump", body, 0600) for i:= 0; i < len(body); i++ …
123 networking  go 

1
“Usado como valor” na chamada de função
Qual é a maneira correta de chamar funções ao avaliar seus valores em instruções condicionais? package main import "fmt" func main(){ if sumThis(1,2) > sumThis(3,4){ fmt.Println("test") } else { fmt.Println("derp") } } func sumThis(a, b int){ return a+b } isso retorna o erro: ./test4.go:4: sumThis(1, 2) used as value ./test4.go:4: …
122 go 

8
Descompactar objetos JSON aninhados
Há um alguns perguntas sobre o tema , mas nenhum deles parecem cobrir meu caso, portanto, eu estou criando um novo. Eu tenho JSON como o seguinte: {"foo":{ "bar": "1", "baz": "2" }, "more": "text"} Existe uma maneira de desempacotar a propriedade aninhada bar e atribuí-la diretamente a uma propriedade …
122 json  go 

6
Por que não consigo duplicar uma fatia com `copy ()`?
Preciso fazer uma cópia de uma fatia no Go e, lendo os documentos, há uma função de cópia à minha disposição. A função interna de cópia copia elementos de uma fatia de origem em uma fatia de destino. (Como um caso especial, ele também copiará bytes de uma string para …
121 go  slice 

4
Golang testa no subdiretório
Quero criar um pacote em Go com testes e exemplos do pacote como subdiretórios para manter o espaço de trabalho mais limpo. Isso é possível e se sim como? Toda a documentação sempre coloca o código de teste no mesmo lugar que o outro código, isso é melhor de alguma …
121 build  go 

4
Configuração de aplicativo da web de produção Golang
Para aqueles que executam back-ends de Go na produção: Qual é a sua pilha / configuração para executar um aplicativo da web Go? Eu não vi muito sobre este tópico além de pessoas usando o pacote net / http da biblioteca padrão para manter um servidor funcionando. Eu li usando …
120 web  go  production 


8
Abordagem correta para registro global em Golang
Qual é o padrão para o login do aplicativo no Go? Se eu tenho, digamos, 5 goroutines de que preciso fazer login, devo ... Criar um single log.Loggere distribuí-lo? Passar um ponteiro para isso log.Logger? Cada goroutine ou função deve criar um logger? Devo criar o logger como uma variável …
119 logging  go 



3
Como transformar int em int64?
Estou tentando converter um inteiro em um inteiro 64 em go, mas não estou tendo sorte. Alguém conhece uma maneira fácil de fazer isso?
118 go 

3
Tipo de dados par / tupla em Go
Enquanto fazia o exercício final do Tour of Go , decidi que precisava de uma fila de ( string, int) pares. Isso é bastante fácil: type job struct { url string depth int } queue := make(chan job) queue <- job{url, depth} Mas isso me fez pensar: existem tipos de …
118 go  tuples 

5
Diferença entre fmt.Println () e println () no Go
Conforme ilustrado abaixo, ambos fmt.Println()e println()fornecem a mesma saída em Go:Hello world! Mas: como eles diferem um do outro? Snippet 1, usando o fmtpacote; package main import ( "fmt" ) func main() { fmt.Println("Hello world!") } Snippet 2, sem o fmtpacote; package main func main() { println("Hello world!") }
117 go  println 

5
como ouvir N canais? (declaração de seleção dinâmica)
para iniciar um loop infinito de execução de duas goroutines, posso usar o código abaixo: após receber a mensagem, ele iniciará uma nova goroutine e continuará para sempre. c1 := make(chan string) c2 := make(chan string) go DoStuff(c1, 5) go DoStuff(c2, 2) for ; true; { select { case msg1 …
116 go 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.