स्टेटिक विधि सी ++

Stetika Vidhi Si



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

हमने इस लेख को उबुंटू 20.04 में C++ में स्थिर तरीकों के उपयोग को सिखाने के लिए डिज़ाइन किया है।

Ubuntu 20.04 में C++ में स्टेटिक मेथड का उपयोग करना

Ubuntu 20.04 में C++ में स्थिर तरीकों का उपयोग करने के लिए, आपको सबसे पहले नीचे दिए गए सभी उदाहरणों के माध्यम से जाने की जरूरत है कि ये कार्य C++ में कैसे काम करते हैं।







उदाहरण # 1: सी ++ में स्टेटिक विधियों की पहली संपत्ति की खोज करना

इस उदाहरण में, हम C++ में स्थिर तरीकों की पहली संपत्ति का पता लगाना चाहते हैं; स्कोप रेज़ोल्यूशन ऑपरेटर का उपयोग करते समय कक्षा के स्थिर तरीकों को सीधे वर्ग के नाम से एक्सेस किया जा सकता है। उसके लिए, हमने निम्नलिखित चित्र में दिखाई गई एक C++ स्क्रिप्ट लिखी है:



  स्टेटिक विधि सी ++



इस C++ script में हमने “Number” नाम के एक वर्ग को परिभाषित किया है। इस वर्ग के शरीर के अंदर, हमारा केवल एक सार्वजनिक कार्य है। हमने इस फ़ंक्शन को 'स्थैतिक' घोषित किया है। इस फंक्शन का नाम है ' PrintNum ', और यह संख्या' n 'को इसके एकमात्र पैरामीटर के रूप में लेता है। इस फ़ंक्शन के भीतर, हम केवल टर्मिनल पर इस पास की गई संख्या का मान प्रिंट करना चाहते हैं। जैसा कि आप देख सकते हैं, हमने इस क्लास के लिए किसी कंस्ट्रक्टर को परिभाषित नहीं किया है। इसका मतलब है कि हम इसकी वस्तु बनाने का इरादा नहीं रखते हैं। इसके बजाय, हम इस वर्ग के कार्यों को सीधे एक्सेस करने जा रहे हैं।





अब, हमारे भीतर ' मुख्य() 'फ़ंक्शन, हमने' एक्सेस किया है PrintNum वर्ग के नाम और स्कोप रिज़ॉल्यूशन ऑपरेटर की मदद से 'संख्या' वर्ग का कार्य। इस फ़ंक्शन को कॉल करते समय, हमने इसे एक यादृच्छिक संख्या, यानी 25 पास कर दिया है। हमारा ' मुख्य() 'फ़ंक्शन' रिटर्न 0 'स्टेटमेंट के साथ समाप्त हो जाता है क्योंकि हमने इसे एक पूर्णांक रिटर्न प्रकार घोषित किया है।

जब हमने इस C++ स्क्रिप्ट को संकलित और निष्पादित किया, तो हमारा नंबर टर्मिनल पर सही ढंग से प्रिंट किया गया था, जैसा कि नीचे दी गई छवि में दिखाया गया है। इसका मतलब है कि सी ++ में स्थैतिक विधियों की पहली संपत्ति संतुष्ट हो गई है - स्थैतिक विधियों को बिना किसी वस्तु को बनाए सीधे कक्षा के नाम से एक्सेस किया जा सकता है, और वे बिल्कुल इरादे से काम करते हैं।



  सी ++ में स्टेटिक विधि

उदाहरण # 2: सी ++ में स्टेटिक विधियों की दूसरी संपत्ति की खोज करना

इस उदाहरण में, हम C++ में स्थिर तरीकों की दूसरी संपत्ति का पता लगाना चाहते हैं; किसी वर्ग के स्थैतिक तरीके केवल उस वर्ग के स्थिर सदस्यों तक ही पहुँच सकते हैं। उसके लिए, हमने निम्नलिखित चित्र में दिखाई गई एक C++ स्क्रिप्ट लिखी है:

इस C++ script में हमने सबसे पहले “Number” नाम के एक वर्ग को परिभाषित किया है। इस वर्ग के शरीर के अंदर, हमारे पास एक निजी सदस्य 'x' है जो कि पूर्णांक डेटा प्रकार का है, और हमने इसे स्थिर बना दिया है। फिर, हमारे पास केवल एक सार्वजनिक समारोह है। हमने इस कार्य को 'के रूप में घोषित किया है' स्थिर ”। इस फंक्शन का नाम है ' PrintNum ', और यह संख्या' n 'को इसके एकमात्र पैरामीटर के रूप में लेता है। इस फ़ंक्शन के भीतर, हम टर्मिनल पर इस पास की गई संख्या का मान और स्थिर सदस्य 'x' का मान प्रिंट करना चाहते हैं।

उसके बाद, हमने 'स्टैटिक' कीवर्ड का फिर से उपयोग किए बिना, हमारी कक्षा के बाहर वर्ग के नाम की मदद से '10' मान के साथ स्थिर सदस्य 'x' को इनिशियलाइज़ किया है। अब, हमारे भीतर ' मुख्य() 'फ़ंक्शन, हमने' एक्सेस किया है PrintNum वर्ग के नाम और स्कोप रिज़ॉल्यूशन ऑपरेटर की मदद से 'संख्या' वर्ग का कार्य। इस फ़ंक्शन को कॉल करते समय, हमने इसे एक यादृच्छिक संख्या, यानी 25. हमारा ' मुख्य() 'फ़ंक्शन' रिटर्न 0 'स्टेटमेंट के साथ समाप्त हो जाता है क्योंकि हमने इसे एक पूर्णांक रिटर्न प्रकार घोषित किया है।

जब हमने इस सी ++ स्क्रिप्ट को संकलित और निष्पादित किया, तो हमारी संख्या, साथ ही वेरिएबल 'एक्स' का मान टर्मिनल पर सही ढंग से मुद्रित किया गया था, जैसा कि नीचे दी गई छवि में दिखाया गया है। इसका मतलब है कि सी ++ में स्थिर विधियों की दूसरी संपत्ति संतुष्ट हो गई है - स्थिर विधियां केवल सी ++ में कक्षा के स्थिर सदस्यों तक ही पहुंच सकती हैं।

उदाहरण # 3: सी ++ में स्टेटिक विधियों की तीसरी संपत्ति की खोज करना

इस उदाहरण में, हम C++ में स्थिर तरीकों की तीसरी संपत्ति का पता लगाना चाहते हैं, जो वास्तव में, दूसरी संपत्ति को बताने का दूसरा तरीका है; स्थैतिक विधियाँ किसी वर्ग के गैर-स्थैतिक सदस्यों तक नहीं पहुँच सकती हैं। उसके लिए, हमने निम्नलिखित चित्र में दिखाई गई एक C++ स्क्रिप्ट लिखी है:

यह C++ स्क्रिप्ट बिल्कुल दूसरे उदाहरण में दिखाई गई स्क्रिप्ट की तरह दिखती है। हालाँकि, केवल अंतर यह है कि इस बार, हमने चर 'x' को स्थैतिक घोषित नहीं किया है।

जब हमने इस C ++ स्क्रिप्ट को संकलित और निष्पादित किया, तो टर्मिनल पर एक त्रुटि संदेश उत्पन्न हुआ जैसा कि नीचे दी गई छवि में दिखाया गया है, 'x' के मान जैसा कुछ बताते हुए C ++ में एक स्थिर विधि द्वारा पहुँचा नहीं जा सकता है। इसका मतलब है कि सी ++ में स्थैतिक विधियों की तीसरी संपत्ति संतुष्ट हो गई है - स्थिर विधियां सी ++ में कक्षा के किसी भी गैर-स्थैतिक सदस्यों तक नहीं पहुंच सकती हैं।

उदाहरण # 4: C++ में स्टेटिक मेथड्स का उपयोग करके लगातार रोल नंबर जेनरेट करना

इस उदाहरण में, हम केवल अपने उदाहरणों को लपेटकर सी ++ में स्थिर तरीके कैसे काम करते हैं, इसका एक समग्र दृष्टिकोण देना चाहते थे। हम केवल प्रदान की गई सीमा के भीतर कुछ रोल नंबर बनाने के लिए एक प्रोग्राम बना रहे होंगे। उसके लिए, हमने निम्नलिखित चित्र में दिखाई गई एक C++ स्क्रिप्ट लिखी है:

इस C++ स्क्रिप्ट में, हमारे पास “RollNumber” नाम का एक वर्ग है। इस वर्ग के भीतर, हमारे पास पूर्णांक डेटा प्रकार का एक निजी स्थिर सदस्य 'रोलनम' है। फिर, हमारे पास एक सार्वजनिक स्थैतिक विधि है ' getRollNum () 'पूर्णांक वापसी प्रकार के साथ। इस वर्ग की परिभाषा के बाहर, हमने अपने 'रोलनाम' वेरिएबल को '1' मान के साथ प्रारंभ किया है और हमारे 'रोलनंबर' को परिभाषित किया है। getRollNum () ” हर बार बुलाए जाने पर बढ़े हुए 'रोलनम' को वापस करने के लिए भी कार्य करता है।

फिर, हमारे भीतर ' मुख्य() ” फ़ंक्शन, हमारे पास एक 'फॉर' लूप है जो काउंटर वैरिएबल के माध्यम से '0' से '9' तक पुनरावृत्त करता है, जो 10 पुनरावृत्तियों के लिए है। इस लूप के अंदर, हम 'द्वारा लौटाए गए मान को प्रिंट करना चाहते हैं' getRollNum () 'प्रत्येक पुनरावृत्ति के लिए कार्य करें। फिर से, ' मुख्य() 'फ़ंक्शन' रिटर्न 0 'कथन के साथ समाप्त होता है।

जब हमने इस C++ स्क्रिप्ट को संकलित और निष्पादित किया, तो टर्मिनल पर 10 अलग-अलग रोल नंबरों की एक श्रृंखला उत्पन्न हुई, जैसा कि निम्नलिखित छवि में दिखाया गया है:

निष्कर्ष

इस लेख के लिए हमारा लक्ष्य आपको Ubuntu 20.04 में C++ में स्थैतिक तरीकों का उपयोग करना सिखाना था। हमने इन विधियों के मूल गुणों को साझा किया है, इसके बाद चार उदाहरण दिए हैं जिनके माध्यम से आप तुरंत सीख सकते हैं कि ये तरीके C++ में कैसे काम करते हैं। इन उदाहरणों को समझने के बाद, आप आसानी से C++ में स्टैटिक मेथड पर अच्छी कमांड प्राप्त कर सकते हैं। हम आशा करते हैं कि आपको यह लेख मददगार लगा होगा, और अधिक जानकारीपूर्ण लेखों के लिए Linux संकेत देखें।