"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > गो में `func` के बाद ब्रैकेट क्यों हैं?

गो में `func` के बाद ब्रैकेट क्यों हैं?

2024-12-22 को प्रकाशित
ब्राउज़ करें:291

Why are there Brackets after `func` in Go?

गो में func के बाद ब्रैकेट के महत्व को समझना

गो प्रोग्रामिंग के क्षेत्र में एक नौसिखिया के रूप में, आप ऐसे उदाहरणों का सामना कर सकते हैं जहां ब्रैकेट सीधे func कीवर्ड के बाद नियोजित होते हैं . यह पेचीदा हो सकता है, खासकर यदि आप गो के अनूठे वाक्यविन्यास से अपरिचित हैं। आइए इस रहस्यमय प्रतीत होने वाली विशेषता पर प्रकाश डालें।

इसके पीछे क्या है (v संस्करण)?

गो में, func के बाद वाले ब्रैकेट फ़ंक्शन हस्ताक्षर का हिस्सा नहीं हैं, बल्कि एक विधि का संकेत देते हैं। एक विधि एक फ़ंक्शन है जो एक विशिष्ट प्रकार से जुड़ा होता है। आपके द्वारा प्रदान किया गया कोड स्निपेट संस्करण प्रकार के लिए मार्शलजेएसओएन नामक विधि की परिभाषा को दर्शाता है।

इसे तोड़ना:

  • (v संस्करण) : यह रिसीवर और रिसीवर के प्रकार को निर्दिष्ट करता है। इस मामले में, v संस्करण प्रकार का एक रिसीवर है। इसका मतलब यह है कि विधि को केवल संस्करण प्रकार के मान पर ही लागू किया जा सकता है।
  • MarshalJSON(): यह विधि का नाम है।
  • ( []बाइट, त्रुटि): यह विधि का रिटर्न प्रकार है। इस मामले में, यह एक बाइट सरणी और एक त्रुटि मान लौटाता है।

Receiver को समझना

रिसीवर क्रमशः Python और Java में self या this कीवर्ड के अनुरूप है। यह उस प्रकार के उदाहरण का प्रतिनिधित्व करता है जिस पर विधि लागू की जा रही है। आपके उदाहरण में, v संस्करण प्रकार के उदाहरण को संदर्भित करता है जिसके लिए मार्शलजेएसओएन विधि को बुलाया जाता है।

व्यावहारिक उदाहरण

इस अवधारणा को और स्पष्ट करने के लिए, निम्नलिखित कोड पर विचार करें:

type Person struct {
    name string
}

func (p Person) SayHello() {
    fmt.Printf("Hello! My name is %s.\n", p.name)
}

इस उदाहरण में, SayHello विधि व्यक्ति संरचना प्रकार से जुड़ी हुई है। इसका मतलब यह है कि व्यक्ति प्रकार का कोई भी उदाहरण SayHello विधि को लागू कर सकता है। . विधियाँ आपको विशिष्ट प्रकारों में कार्यक्षमता जोड़ने, कोड मॉड्यूलैरिटी और पुन: प्रयोज्यता बढ़ाने की अनुमति देती हैं।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3