โดยพื้นฐานแล้ววิธีเดียว (ที่ฉันรู้) ในการวนซ้ำผ่านค่าของฟิลด์ของ a struct
เป็นดังนี้:
type Example struct {
a_number uint32
a_string string
}
//...
r := &Example{(2 << 31) - 1, "...."}:
for _, d:= range []interface{}{ r.a_number, r.a_string, } {
//do something with the d
}
ฉันสงสัยว่ามีวิธีที่ดีกว่าและหลากหลายกว่าในการบรรลุผล[]interface{}{ r.a_number, r.a_string, }
หรือไม่ดังนั้นฉันจึงไม่จำเป็นต้องแสดงรายการพารามิเตอร์แต่ละรายการทีละรายการหรือมีวิธีที่ดีกว่าในการวนซ้ำโครงสร้างหรือไม่
ฉันพยายามมองผ่านreflect
แพ็คเกจ แต่ฉันชนกำแพงเพราะฉันไม่แน่ใจว่าจะทำอย่างไรเมื่อฉันดึงข้อมูลออกreflect.ValueOf(*r).Field(0)
มา
ขอบคุณ!