Go में स्ट्रक्चर के सभी फील्ड्स को कैसे iterate करें? (struct fields पर iteration)
सभी को नमस्ते! मैंने अभी-अभी Go सीखना शुरू किया है और एक समस्या का सामना किया: मेरे पास कई फील्ड्स वाला एक struct है, और मुझे प्रोग्रामेटिक रूप से इसके सभी फील्ड्स को iterate करने की आवश्यकता है, उदाहरण के लिए, उनके मान प्रिंट करने या map में serialize करने के लिए।
यहाँ मेरे struct का उदाहरण है:
```go
type User struct {
Name string
Age int
Email string
}
```
मैं एक फंक्शन लिखना चाहता हूँ जो `User` को स्वीकार करे और सभी फील्ड्स को `key: value` फॉर्मेट में प्रिंट करे। मैंने सामान्य loop का उपयोग करने की कोशिश की, लेकिन Go array या map की तरह struct के फील्ड्स पर iterate करने की अनुमति नहीं देता।
```go
func PrintFields(u User) {
for _, field := range u { // Error: cannot range over u (type User)
fmt.Println(field)
}
}
```
मैं समझता हूँ कि अन्य भाषाओं (जैसे Python या JavaScript) में यह आसानी से किया जा सकता है।