capypad
0 Tage Serie
go / beginner
Snippet

Structs: Eigene Datentypen erstellen

Structs sind zusammengesetzte Datentypen, die null oder mehr Werte unterschiedlicher Typen zu einer einzigen Entität gruppieren. Du definierst ein Struct mit dem type-Schlüsselwort, gefolgt von einem Namen und dem Struct-Body mit Felddeklarationen. Structs können mit Feldnamen (benannte Felder) oder Positionswerten initialisiert werden, und Felder können mit der Punktnotation zugegriffen und modifiziert werden.

snippet.go
go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package main
 
import "fmt"
 
type Person struct {
Name string
Age int
}
 
func main() {
person1 := Person{Name: "Alice", Age: 30}
person2 := Person{"Bob", 25}
var person3 Person
 
fmt.Println(person1.Name)
fmt.Println(person2.Age)
 
person3.Name = "Carol"
person3.Age = 28
 
fmt.Printf("%+v\n", person3)
}
Erklärung
1
type Person struct { ... }
Definiert einen neuen Struct-Typ namens Person
2
person1 := Person{Name: "Alice", Age: 30}
Erstellt Instanz mit benannter Feldinitialisierung
3
person2 := Person{"Bob", 25}
Erstellt Instanz mit Positionswerten (Reihenfolge ist wichtig)
4
var person3 Person
Deklariert person3 mit Nullwerten ("", 0)
5
person3.Name = "Carol"
Zugriff und Modifikation von Feldern mit Punktnotation