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