एक क्लोजर हा एक फंक्शन आहे जो त्याच्या सभोवतालच्या स्कोपमधील व्हेरिएबल्सचा संदर्भ देतो, त्यांना "बंद" करतो — हा फंक्शन बाह्य फंक्शन परत आल्यानंतरही त्या व्हेरिएबल्सचा प्रवेश ठेवतो. Go फंक्शन्स प्रथम-श्रेणीचे मूल्य आहेत, ज्यामुळे क्लोजर एक सामान्य आणि शक्तिशाली साधन आहे.
मूलभूत क्लोजर
{
count :=
{
count++
count
}
}
counter := makeCounter()
fmt.Println(counter())
fmt.Println(counter())
other := makeCounter()
fmt.Println(other())
