Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी ++ में हटाएं () ऑपरेटर

डिलीट ऑपरेटर का उपयोग मेमोरी को डीलोकेट करने के लिए किया जाता है। उपयोगकर्ता को इस डिलीट ऑपरेटर द्वारा बनाए गए पॉइंटर वेरिएबल को डीलोकेट करने का विशेषाधिकार है।

यहाँ C++ भाषा में डिलीट ऑपरेटर का सिंटैक्स दिया गया है,

delete pointer_variable;

आबंटित मेमोरी के ब्लॉक को हटाने के लिए सिंटैक्स यहां दिया गया है,

delete[ ] pointer_variable;

यहाँ C++ भाषा में डिलीट ऑपरेटर का उदाहरण दिया गया है,

उदाहरण

#include <iostream>
using namespace std;
int main () {
   int *ptr1 = NULL;
   ptr1 = new int;
   float *ptr2 = new float(299.121);
   int *ptr3 = new int[28];
   *ptr1 = 28;
   cout << "Value of pointer variable 1 : " << *ptr1 << endl;
   cout << "Value of pointer variable 2 : " << *ptr2 << endl;
   if (!ptr3)
   cout << "Allocation of memory failed\n";
   else {
      for (int i = 10; i < 15; i++)
      ptr3[i] = i+1;
      cout << "Value of store in block of memory: ";
      for (int i = 10; i < 15; i++)
      cout << ptr3[i] << " ";
   }
   delete ptr1;
   delete ptr2;
   delete[] ptr3;
   return 0;
}

आउटपुट

Value of pointer variable 1 : 28
Value of pointer variable 2 : 299.121
Value of store in block of memory: 11 12 13 14 15

उपरोक्त कार्यक्रम में, चार चर घोषित किए गए हैं और उनमें से एक सूचक चर *p है जो मॉलोक द्वारा आवंटित स्मृति को संग्रहीत कर रहा है। सरणी के तत्व उपयोगकर्ता द्वारा मुद्रित किए जाते हैं और तत्वों का योग मुद्रित होता है। उन आवंटित स्मृति को हटाने के लिए, ptr1 हटाएं, pt2 हटाएं और हटाएं [] ptr3 का उपयोग करें।

int *ptr1 = NULL;
ptr1 = new int;
float *ptr2 = new float(299.121);
int *ptr3 = new int[28];
*ptr1 = 28;
cout << "Value of pointer variable 1 : " << *ptr1 << endl;
cout << "Value of pointer variable 2 : " << *ptr2 << endl;
if (!ptr3)
cout << "Allocation of memory failed\n";
else {
   for (int i = 10; i < 15; i++)
   ptr3[i] = i+1;
   cout << "Value of store in block of memory: ";
   for (int i = 10; i < 15; i++)
   cout << ptr3[i] << " ";
}
delete ptr1;
delete ptr2;
delete[] ptr3;

  1. C++ में ट्री नोड्स हटाएं

    मान लीजिए कि हमारे पास एक पेड़ है, इस पेड़ की जड़ें नोड 0 पर हैं, यह इस प्रकार दिया गया है - नोड्स की संख्या नोड्स है ith नोड का मान मान है[i] ith नोड का जनक माता-पिता है[i] हमें प्रत्येक सबट्री को हटाना होगा जिसका नोड्स के मानों का योग 0 है, ऐसा करने के बाद पेड़ में शेष नोड्स की संख्या वापस कर द

  1. सूची ऑपरेटर =C++ STL . में

    एसटीएल में सी++ में फंक्शनलिटी लिस्ट ऑपरेटर =फंक्शन दिखाने का टास्क दिया गया है। एसटीएल में सूची क्या है? सूची कंटेनर हैं जो क्रम में कहीं भी निरंतर समय सम्मिलन और विलोपन की अनुमति देते हैं। Listare को डबल लिंक्ड लिस्ट के रूप में लागू किया गया है। सूची गैर-सन्निहित स्मृति आवंटन की अनुमति देती है। स

  1. सी ++ में बीएसटी में नोड हटाएं

    मान लीजिए कि हमारे पास एक बाइनरी सर्च ट्री है। हम एक कुंजी k लेंगे, और हमें दिए गए कुंजी k को BST से हटाना होगा, और अद्यतन BST को वापस करना होगा। तो अगर पेड़ जैसा है - और कुंजी k =3, तो आउटपुट ट्री होगा - इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - रूट नोड को हटाने के लिए deleteR