الـ Struct في لغة Go هي مجموعة من الحقول التي تجمع بيانات مختلفة الأنواع تحت اسم واحد، وتسمح بنمذجة الكيانات الواقعية مثل الموظف أو السيارة أو الطالب. تعتبر Structs الأساس للبرمجة المنظمة في Go.

تعريف Struct

package main
import "fmt"
type Person struct {
    Name string
    Age  int
}
func main() {
    p := Person{Name: "أحمد", Age: 30}
    fmt.Println(p)
}

الوصول إلى الحقول

fmt.Println(p.Name)
p.Age = 31

Struct داخل Struct

type Address struct {
    City string
}
type Employee struct {
    Name    string
    Address Address
}

الدوال المرتبطة بـ Struct

func (p Person) Greet() string {
    return "مرحبًا " + p.Name
}