Anonyme Strukturen und Felder in Golang

In Golang ermöglichen Strukturen (oder Structs), Elemente unterschiedlichen Typs zu einer Einheit zu gruppieren, was für die Modellierung realer Entitäten nützlich ist. Anonyme Strukturen in Golang sind temporäre Strukturen ohne Namen, die für einmalige Zwecke verwendet werden, während anonyme Felder das Einbetten unbenannter Felder ermöglichen.

Anonyme Strukturen und Felder in Golang

Zum Beispiel:

package main
import "fmt"

// struct học sinh với cấu trúc và trường ẩn danh
type Student struct {
    struct {    // Cấu trúc bên trong ẩn danh cho thông tin cá nhân
        name string
        enrollment int
    }
    GPA float64  // Trường chuẩn
}

func main() {
    student := Student{
        struct {
            name string
            enrollment int
        }{
            name: "A",
            enrollment: 12345,
        },
        GPA: 3.8,
    }
    fmt.Println("Name:", student.name)
    fmt.Println("Enrollment:", student.enrollment)
    fmt.Println("GPA:", student.GPA)
}

Syntax:

variable := struct {
    field1 dataType1
    field2 dataType2                                                          # Cấu trúc ẩn danh
    // Trường bổ sung khi cần
}{value1, value2}


type StructName struct {
    dataType1
    dataType2                                                                    # Trường ẩn danh                                        
    // Trường ẩn danh bổ sung
}

Anonyme Strukturen in Go

Anonyme Strukturen in Go werden ohne Namen definiert und eignen sich zum Erstellen temporärer, verfügbarer Strukturen. Hier ist die Syntax und ein Codebeispiel.

Syntax:

variable := struct {
    field1 dataType1
    field2 dataType2
    // Các trường bổ sung khi cần
}{value1, value2}

Zum Beispiel:

package main
import "fmt"
// Cấu trúc sinh viên với cấu trúc bên trong ẩn danh cho thông tin cá nhân
type Student struct {
    personalDetails struct { // Cấu trúc ẩn danh bên trong cho thông tin cá nhân
        name       string
        enrollment int
    }
    GPA float64 // Trường chuẩn
}
func main() {
    // Khởi tạo cấu trúc bên trong cho student
    student := Student{
        personalDetails: struct {
            name       string
            enrollment int
        }{
            name:       "A",
            enrollment: 12345,
        },
        GPA: 3.8,
    }
    // Hiện giá trị
    fmt.Println("Name:", student.personalDetails.name)
    fmt.Println("Enrollment:", student.personalDetails.enrollment)
    fmt.Println("GPA:", student.GPA)
}

Ergebnis:

Name: A
Enrollment: 12345
GPA: 3.8

Dieser Code definiert eine Student- Struktur mit einer anonymen personalDetails- Struktur, in der Name und Registrierungsinformationen gespeichert sind. Anschließend initialisiert er student mit Werten für diese Felder und gibt sie aus.

Anonyme Felder

Anonyme Felder in Go ermöglichen die Definition von Feldern ohne explizite Namen, nur deren Typen. Dies ist nützlich, wenn Felder automatisch dem Typnamen folgen.

Syntax

type StructName struct {
    dataType1
    dataType2
    // Additional anonymous fields
}

Zum Beispiel:

package main
import "fmt"

// Cấu trúc học sinh bằng các trường ẩn danh
type Student struct {
    int     // Số đăng ký (trường ẩn danh)
    string  // Tên trường ẩn danh
    float64 // GPA (trường ẩn danh)
}

func main() {
    // Khởi tạo struct học sinh với các trường ẩn danh
    student := Student{12345, "A", 3.8}

    // Hiện giá trị
    fmt.Println("Enrollment:", student.int)
    fmt.Println("Name:", student.string)
    fmt.Println("GPA:", student.float64)
}

Ergebnis:

Enrollment: 12345
Name: A
GPA: 3.8

Dabei fungieren die Datentypen ( int, string, float64 ) als Feldnamen, der Zugriff auf die Werte ist also typenabhängig.

Wichtige Punkte zu anonymen Feldern in Golang

1. Einzigartige Anforderung: Sie können nicht zwei Felder desselben Typs in einer Struktur verwenden. Beispiel:

type InvalidStudent struct {
    int
    int // Error: duplicate type
}

2. Kombinieren benannter und anonymer Felder: Sie können anonyme und benannte Felder in einer Struktur kombinieren.

type Student struct {
    id int // Named field
    int    // Anonymous field
}

Einen Kommentar hinterlassen

Side Hustles That Actually Pay in 2026: 7 Realistic Options and the Tradeoffs to Know

Side Hustles That Actually Pay in 2026: 7 Realistic Options and the Tradeoffs to Know

Compare realistic side hustles for 2026 by startup cost, fees, flexibility, and income control, with current tax and scam guidance from official sources.

Ergonomie im Homeoffice 2026: So optimieren Sie Ihr Heimbüro, ohne zu viel auszugeben

Ergonomie im Homeoffice 2026: So optimieren Sie Ihr Heimbüro, ohne zu viel auszugeben

Verbessern Sie die Ergonomie Ihres Homeoffice mit den aktuellen OSHA- und NIOSH-Richtlinien zu Stuhlpassform, Monitorhöhe, Laptop-Aufstellung, Beleuchtung und Bewegungsabläufen.

Why Emotional Intelligence Matters in Leadership—and How to Build It

Why Emotional Intelligence Matters in Leadership—and How to Build It

Learn why emotional intelligence matters in leadership, where it helps most, how to strengthen it, and how to tell whether your approach is working.

Wie man ohne Hochschulabschluss in eine Technologiekarriere wechselt: Ein ergebnisorientierter Fahrplan für 2026

Wie man ohne Hochschulabschluss in eine Technologiekarriere wechselt: Ein ergebnisorientierter Fahrplan für 2026

Ein praktischer Leitfaden für den Einstieg in die Tech-Branche ohne Hochschulabschluss: Wählen Sie eine leicht zugängliche Stelle, erwerben Sie berufsrelevante Fähigkeiten, beweisen Sie diese anhand von Projekten und nutzen Sie das Feedback aus dem Bewerbungsprozess, um sich zu verbessern.

Aufbau einer persönlichen Marke auf LinkedIn im Jahr 2026: Was funktioniert noch, was hat sich verändert und was sollte man ignorieren?

Aufbau einer persönlichen Marke auf LinkedIn im Jahr 2026: Was funktioniert noch, was hat sich verändert und was sollte man ignorieren?

Bauen Sie im Jahr 2026 eine glaubwürdige LinkedIn-Personalmarke auf – mit aktuellem Profil, Inhalten, Newsletter, Analysen, Verifizierung und Sichtbarkeitsberatung von LinkedIn.

Quiet Quitting vs. Quiet Firing in 2026: What’s Really Changing at Work

Quiet Quitting vs. Quiet Firing in 2026: What’s Really Changing at Work

Quiet quitting and quiet firing are catchy labels, not diagnoses. Learn what is verified, what depends on context, and what employees and managers can do next.

Der Aufstieg des Teilzeit-Managers: Wann Teilzeit-Führungskräfte auf der C-Suite sinnvoll sind

Der Aufstieg des Teilzeit-Managers: Wann Teilzeit-Führungskräfte auf der C-Suite sinnvoll sind

Teilzeit-Führungskräfte bieten Top-Management ohne Vollzeitbeschäftigung. Erfahren Sie, wann dieses Modell funktioniert, welche Fragen Sie stellen sollten und welche Risiken zu berücksichtigen sind.

Wie Sie im Rahmen der Leistungsbeurteilung im vierten Quartal eine Gehaltserhöhung aushandeln: Ein praktischer Entscheidungsleitfaden für 2026

Wie Sie im Rahmen der Leistungsbeurteilung im vierten Quartal eine Gehaltserhöhung aushandeln: Ein praktischer Entscheidungsleitfaden für 2026

Bereiten Sie einen überzeugenderen Antrag auf Gehaltserhöhung im vierten Quartal vor, der aktuelle Lohndaten, Optionen für den Zeitpunkt, mögliche Abwägungen bei der Vergütung sowie Formulierungsvorschläge für die Szenarien Ja, Teilweises oder Nein enthält.

6 gefragte Fähigkeiten, die Sie noch vor Ende 2026 erlernen können

6 gefragte Fähigkeiten, die Sie noch vor Ende 2026 erlernen können

Wählen Sie eine gut bezahlte Qualifikation, mit der Sie realistischerweise noch vor Ende 2026 beginnen können, unter Berücksichtigung aktueller Gehaltsdaten, Lernprioritäten und einer praktischen Selbsteinschätzung.

Mastering the Hybrid Work Schedule: A Practical Framework That Actually Holds Up

Mastering the Hybrid Work Schedule: A Practical Framework That Actually Holds Up

Build a hybrid work schedule around tasks, team overlap, and measurable outcomes. See sample patterns, warning signs, and when to adjust your plan.