सॉफ्टवेयर बनाने के लिए सभी आधुनिक उपकरणों और भाषाओं में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग प्रतिमान प्रचलित है। उद्योग मानक आज वस्तु-उन्मुख प्रोग्रामिंग भाषा C ++ है। आप कई अलग-अलग तरीकों से C++ में एक क्लास का इंस्टेंस बना सकते हैं।
यह आवश्यक है
सी ++ कंपाइलर।
अनुदेश
चरण 1
फ़ंक्शन, क्लास मेथड या स्टेटमेंट ब्लॉक द्वारा परिभाषित स्थानीय स्कोप में क्लास को ऑटो वेरिएबल के रूप में इंस्टेंट करें। अपने प्रोग्राम में किसी चयनित स्थान पर क्लास ऑब्जेक्ट की घोषणात्मक या अनिवार्य परिभाषा का उपयोग करें। यदि आवश्यक हो, तो पैरामीटर के साथ किसी भी कंस्ट्रक्टर को स्पष्ट कॉल करें। निम्न के समान कोड का उपयोग करके एक ऑब्जेक्ट बनाएं: void CMyClass:: SomeMethod () {COtherClass oSomeObject1; // डिफ़ॉल्ट कंस्ट्रक्टर COtherClass oSomeObject2 (1980, "विक्टर वी। वाक्चुरोव") का उपयोग करके एक ऑब्जेक्ट बनाएं; // पैरामीटर के साथ एक कंस्ट्रक्टर का उपयोग करके एक ऑब्जेक्ट बनाना} उसी तरह से बनाई गई कक्षाओं की वस्तुओं के लिए मेमोरी, जैसे कि किसी अन्य ऑटो-वेरिएबल के लिए, स्टैक पर आवंटित की जाती है। इसलिए, जब आप दायरे से बाहर निकलते हैं और स्टैक फ्रेम को हटाते हैं, तो वस्तु नष्ट हो जाएगी (विनाशक को कॉल के साथ)।
चरण दो
नए ऑपरेटर का उपयोग करके ढेर में कक्षा का एक उदाहरण बनाएं। वर्ग की वस्तुओं को तत्काल करने के लिए टाइप पॉइंटर के एक चर को परिभाषित करें। इसे एक मान दें जो नए ऑपरेटर के मूल्यांकन का परिणाम है। उपयुक्त कंस्ट्रक्टर को बुलाओ। निम्न के जैसा कोड स्निपेट का उपयोग करें: CSomeClass * poSomeObject; // वर्ग की वस्तुओं के लिए एक सूचक की परिभाषा CSomeClasspoSomeObject = new CSomeClass; // क्लास CSomeClass * poSomeObject_2 = नया CSomeClass (111, "3V") का ऑब्जेक्ट बनाएं; // पैरामीटर के साथ कंस्ट्रक्टर को कॉल के साथ निर्माण इस विधि द्वारा ऑब्जेक्ट बनाते समय, नए ऑपरेटर द्वारा परिभाषित मेमोरी आवंटन तंत्र का उपयोग किया जाता है (यदि इसे ओवरराइड नहीं किया गया है और इसका अपना आवंटन फ़ंक्शन सेट नहीं है), तो पता नई वस्तु पहले से ज्ञात नहीं है। इस तरह से बनाई गई सभी वस्तुओं को डिलीट ऑपरेटर का उपयोग करके स्पष्ट रूप से हटा दिया जाना चाहिए।
चरण 3
स्मृति के स्व-आवंटित हिस्से पर नए ऑपरेटर का उपयोग करके कक्षा का एक उदाहरण बनाएं। निम्न के समान कोड का उपयोग करें: शून्य * p0 = malloc (आकार (CSomeClass)); // स्मृति आवंटन शून्य * p1 = malloc (आकार (CSomeClass)); // स्मृति आवंटन नया (p0) CSomeClass; // आवंटित मेमोरी (डिफ़ॉल्ट कंस्ट्रक्टर) पर ऑब्जेक्ट को इनिशियलाइज़ करें नया (p1) CSomeClass (111, "abc"); // ऑब्जेक्ट इनिशियलाइज़ेशन (पैरामीटर के साथ कंस्ट्रक्टर) इस विधि द्वारा बनाई गई वस्तुओं को नष्ट करने से पहले, आपको स्पष्ट रूप से उनके डिस्ट्रक्टर को कॉल करना चाहिए: ((CSomeClass *) p0) -> ~ (); इस तरह से ऑब्जेक्ट बनाना मुख्य रूप से टेम्प्लेट कंटेनर क्लासेस में उपयोग किया जाता है विभिन्न पुस्तकालय (जैसे एसटीएल)।