English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
الهيكلفي Golang هو نوع مستخدم معين، يسمح لنا بإنشاء مجموعة من عناصر مختلفة في وحدة واحدة. أي كيان حقيقي يمتلك مجموعة من الخصائص أو الحقول يمكن تمثيله كهيكل. يسمح لغة Go بنسق الهياكل. هيكل هو حقل في هيكل آخر، يُسمى هيكل منسق. بمعنى آخر، الهيكل في هيكل آخر يُسمى هيكل منسق.
النحو:
نوع اسم الهيكل_1 struct{ // الحقول } نوع اسم الهيكل_2 struct{ اسم المتغير اسم الهيكل_1 }
دعونا نناقش هذه المفاهيم باستخدام مثال:}}
//هيكل فرعي package main import "fmt" //إنشاء هيكل type Author struct { name string branch string year int } //إنشاء هيكل فرعي type HR struct { //هيكل الحقل details Author } func main() { // تحديد حقل الهيكل result := HR{ details: Author{"Sona", "ECE", 2013}, } //طباعة القيم الصادرة fmt.Println("\nتفاصيل المؤلف") fmt.Println(result) }
الإخراج:
تفاصيل المؤلف {{Sona ECE 2013}}
مثال هيكل فرعي2:
package main import "fmt" //إنشاء هيكل type Student struct { name string branch string year int } //إنشاء هيكل فرعي type Teacher struct { name string subject string exp int details Student } func main() { //تحديد حقل الهيكل result := Teacher{ name: "Suman", subject: "Java", exp: 5, details: Student{"Bongo", "CSE", 2}, } fmt.Println("تفاصيل المدرس") fmt.Println("اسم المدرس: ", result.name) fmt.Println("التخصص: ", result.subject) fmt.Println("الخبرة: ", result.exp) fmt.Println("\nمعلومات الطالب") fmt.Println("اسم الطالب: ", result.details.name) fmt.Println("اسم قسم الطالب: ", result.details.branch) fmt.Println("العمر: ", result.details.year) }
الإخراج:
تفاصيل المدرس اسم المدرس: Suman التخصص: Java الخبرة: 5 معلومات الطالب اسم الطالب: Bongo اسم قسم الطالب: CSE العمر: 2