summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--de-de/go-de.html.markdown19
1 files changed, 10 insertions, 9 deletions
diff --git a/de-de/go-de.html.markdown b/de-de/go-de.html.markdown
index 5edcb958..6c285e89 100644
--- a/de-de/go-de.html.markdown
+++ b/de-de/go-de.html.markdown
@@ -119,16 +119,17 @@ Zeilenumbrüche beinhalten.` // Selber Zeichenketten-Typ
learnFlowControl() // Auf zum Kontrollfluss!
}
-// Go is fully garbage collected. It has pointers but no pointer arithmetic.
-// You can make a mistake with a nil pointer, but not by incrementing a pointer.
+// Go ist komplett "garbage collected". Sie unterstützt Zeiger (pointers) aber
+// keine Zeiger-Rechnungen. Fehler können sich durch "nil" einschleichen, jedoch
+// nicht durch erhöhen eines Zeigers.
func learnMemory() (p, q *int) {
- // Named return values p and q have type pointer to int.
- p = new(int) // built-in function new allocates memory.
- // The allocated int is initialized to 0, p is no longer nil.
- s := make([]int, 20) // allocate 20 ints as a single block of memory
- s[3] = 7 // assign one of them
- r := -2 // declare another local variable
- return &s[3], &r // & takes the address of an object.
+ // Die bennanten Rückgabewerte p & q sind vom Typ *int
+ p = new(int) // Eingebaute Funktion "new" weist neuen Speicherplatz zu
+ // Der zugewiesene Speicher ist mit 0 initialisiert, p ist nicht länger nil
+ s := make([]int, 20) // So weist man 20 ints nebeneinander (im Speicher) zu
+ s[3] = 7 // Einer von ihnen wird ein Wert zugewiesen
+ r := -2 // Deklaration einer weiteren lokalen Variable
+ return &s[3], &r // & gibt die Addresse einer Variable
}
func expensiveComputation() int {