ਕਿਸੇ ਮੈਥਡ ਦਾ receiver ਉਹ ਮੁੱਲ ਹੈ ਜਿਸ 'ਤੇ ਇਹ ਕੰਮ ਕਰਦਾ ਹੈ, ਮੈਥਡ ਦੇ ਨਾਮ ਤੋਂ ਪਹਿਲਾਂ ਘੋਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਇੱਕ value receiver ਹੋ ਸਕਦਾ ਹੈ (ਇੱਕ ਕਾਪੀ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ) ਜਾਂ ਇੱਕ pointer receiver ਹੋ ਸਕਦਾ ਹੈ (ਅਸਲ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ, ਇਸ ਨੂੰ ਬਦਲ ਸਕਦਾ ਹੈ)। ਸਹੀ ਚੋਣ ਸ਼ੁੱਧਤਾ (mutation) ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ ਦੋਵਾਂ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ।
Value receiver — ਇੱਕ ਕਾਪੀ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ
Counter { count }
Increment() {
c.count++
}
c := Counter{}
c.Increment()
fmt.Println(c.count)
