English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang-Basisanleitung

Golang-Kontrollanweisungen

Golang-Funktion & Methode

Golang-Strukturtyp

Golang-Schnitt (Schnitt) & Array

Golang-String (String)

Golang-Pfeil

Golang-Schnittstelle

Golang-Parallelität

Golang-Ausnahmen (Error)

Andere Golang-Mischungen

Go Eingeschlossene Strukturen

StrukturIn Golang ist es ein vom Benutzer definiierter Typ, der es uns ermöglicht, eine Gruppe verschiedener Elemente in einer Einheit zu erstellen. Jede reale Entität, die eine Gruppe von Attributen oder Feldern hat, kann als Struktur dargestellt werden. Go ermöglicht verschachtelte Strukturen. Eine Struktur ist ein Feld einer anderen Struktur und wird als verschachtelte Struktur bezeichnet. Mit anderen Worten, eine Struktur in einer anderen Struktur wird als verschachtelte Struktur bezeichnet.

Syntax:

type struct_name_1 struct{
  // Felder
} 
type struct_name_2 struct{
  variable_name  struct_name_1
}

Lassen Sie uns mit Beispielen diesen Konzept diskutieren:

//Verknüpfte Struktur 
package main 
  
import "fmt"
  
//Erstellung der Strukturkörper
type Author struct { 
    name   string 
    branch string 
    year   int
} 
  
//Erstellung der verknüpften Strukturkörper
type HR struct { 
  
    //Feldstruktur
    details Author 
} 
  
func main() { 
  
    // Initialisierung der Strukturfelder 
    result := HR{       
        details: Author{"Sona", "ECE", 2013, 
    } 
  
    //Druck der Ausgabe
    fmt.Println("\nDetaillierte Informationen des Autors") 
    fmt.Println(result) 
}

Ausgabe:

Detaillierte Informationen des Autors
{{Sona ECE 2013}}

Beispiel für verknüpfte Struktur2:

package main 
  
import "fmt"
  
//Erstellung der Struktur 
type Student struct { 
    name   string 
    branch string 
    year   int
} 
  
//Erstellung der verknüpften Struktur
type Teacher struct { 
    name    string 
    subject string 
    exp     int
    details Student 
} 
  
func main() { 
  
    //Initialisierung der Strukturfelder
    result := Teacher{ 
        name:    "Suman", 
        subject: "Java", 
        exp:     5, 
        details: Student{"Bongo", "CSE", 2, 
    } 
   
    fmt.Println("Detaillierte Informationen des Lehrers") 
    fmt.Println("Name des Lehrers: ", result.name) 
    fmt.Println("Fach: ", result.subject) 
    fmt.Println("Erfahrung: ", result.exp) 
  
    fmt.Println("\nDetaillierte Informationen des Studenten") 
    fmt.Println("Name des Studenten: ", result.details.name) 
    fmt.Println("Name der Studentenabteilung: ", result.details.branch) 
    fmt.Println("Alter: ", result.details.year) 
}

Ausgabe:

Detaillierte Informationen des Lehrers
Name des Lehrers:  Suman
Fach:  Java
Erfahrung:  5
Detaillierte Informationen des Studenten
Name des Studenten:  Bongo
Studentenabteilung:  CSE
Alter:  2