Als «go» getaggte Fragen

Go ist eine Open Source Programmiersprache. Es ist statisch typisiert, mit einer lose von C abgeleiteten Syntax, die automatische Speicherverwaltung, Typensicherheit, einige dynamische Typisierungsfunktionen, zusätzliche integrierte Typen wie Arrays variabler Länge und Schlüsselwertzuordnungen sowie eine große Standardbibliothek hinzufügt.

4
Deklarieren Sie ein konstantes Array
Ich habe versucht: const ascii = "abcdefghijklmnopqrstuvwxyz" const letter_goodness []float32 = { .0817,.0149,.0278,.0425,.1270,.0223,.0202, .0609,.0697,.0015,.0077,.0402,.0241,.0675, .0751,.0193,.0009,.0599,.0633,.0906,.0276, .0098,.0236,.0015,.0197,.0007 } const letter_goodness = { .0817,.0149,.0278,.0425,.1270,.0223,.0202, .0609,.0697,.0015,.0077,.0402,.0241,.0675, .0751,.0193,.0009,.0599,.0633,.0906,.0276, .0098,.0236,.0015,.0197,.0007 } const letter_goodness = []float32 { .0817,.0149,.0278,.0425,.1270,.0223,.0202, .0609,.0697,.0015,.0077,.0402,.0241,.0675, .0751,.0193,.0009,.0599,.0633,.0906,.0276, .0098,.0236,.0015,.0197,.0007 } Erstens funktionieren Deklaration und Initialisierung einwandfrei, aber die zweite, dritte und vierte funktionieren nicht. …
164 arrays  go  const 



8
Wie man den Zufallszahlengenerator richtig aussät
Ich versuche, eine zufällige Zeichenfolge in Go zu generieren, und hier ist der Code, den ich bisher geschrieben habe: package main import ( "bytes" "fmt" "math/rand" "time" ) func main() { fmt.Println(randomString(10)) } func randomString(l int) string { var result bytes.Buffer var temp string for i := 0; i < …
160 random  go 

5
Ist es in Ordnung, einen Kanal offen zu lassen?
Ist es in Ordnung, einen Go-Kanal für immer offen zu lassen (niemals den Kanal schließen), wenn ich nie nach seinem Status überprüfe? Wird es zu Speicherlecks führen? Ist der folgende Code in Ordnung? func (requestCh chan<- Request) GetResponse(data RequestData) Response { reply := make(chan Response) requestCh <- Request{data: data, replyCh: …
160 go  channel 

6
Können Funktionen als Parameter übergeben werden?
In Java kann ich so etwas machen derp(new Runnable { public void run () { /* run this sometime later */ } }) und "führen" Sie den Code in der Methode später aus. Es ist ein Schmerz zu behandeln (anonyme innere Klasse), aber es kann getan werden. Hat Go etwas, …
157 function  go 



4
Ändern Sie die Werte während der Iteration
Nehmen wir an, ich habe folgende Typen: type Attribute struct { Key, Val string } type Node struct { Attr []Attribute } und dass ich die Attribute meines Knotens durchlaufen möchte, um sie zu ändern. Am liebsten hätte ich Folgendes tun können: for _, attr := range n.Attr { if …
153 arrays  for-loop  go 

13
Die Installation schlägt mit dem Fehler fehl: Kein Installationsort für das Verzeichnis xxx außerhalb von GOPATH
~/src/go-statsd-client> echo $GOPATH /Users/me/gopath ~/src/go-statsd-client> echo $GOROOT /usr/local/Cellar/go/1.1.1\ ~/src/go-statsd-client> go install go install: no install location for directory /Users/me/src/go-statsd-client outside GOPATH Unabhängig davon, in welcher Struktur sich das Projekt befindet, schlägt dies immer mit derselben Nachricht fehl. Go Build funktioniert perfekt. Hier ist mein go env GOARCH="amd64" GOBIN="" GOCHAR="6" GOEXE="" …
152 macos  go 

3
Wie setze ich Header in http get request?
Ich mache ein einfaches http GET in Go: client := &http.Client{} req, _ := http.NewRequest("GET", url, nil) res, _ := client.Do(req) Aber ich kann keine Möglichkeit finden, den Anforderungsheader im Dokument anzupassen , danke
152 http  go 

8
So teilen Sie eine Zeichenfolge und weisen sie Variablen zu
In Python ist es möglich, einen String zu teilen und ihn Variablen zuzuweisen: ip, port = '127.0.0.1:5432'.split(':') aber in Go scheint es nicht zu funktionieren: ip, port := strings.Split("127.0.0.1:5432", ":") // assignment count mismatch: 2 = 1 Frage: Wie kann man eine Zeichenfolge teilen und Werte in einem Schritt zuweisen?
151 string  go  split 


4
Call Go-Funktionen von C.
Ich versuche, ein statisches Objekt zu erstellen, das in Go to interface mit einem C-Programm (z. B. einem Kernelmodul oder etwas anderem) geschrieben wurde. Ich habe Dokumentation zum Aufrufen von C-Funktionen von Go aus gefunden, aber ich habe nicht viel darüber gefunden, wie man in die andere Richtung geht. Was …

6
Wie kann ich ein Projekt mit mehreren Dateien im Hauptpaket ausführen?
Ich habe derzeit eine einzelne Datei in meinem Hauptpaket namens main.go. Wie teile ich den Inhalt von main.goin mehrere Dateien auf, ohne ein separates Paket zu erstellen, da der Code nicht wiederverwendbar ist? Ich möchte eine Verzeichnisstruktur wie diese: $ ls foo main.go bar.go bar.go package main import "fmt" func …
150 go 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.