मान लें कि मेरे पास एक ऑब्जेक्ट को इंगित करने वाले दो पॉइंटर्स के साथ एक संरचना है जिसमें एक कार्यान्वित विनाशक है। इसके अलावा मान लेते हैं कि एक Listnode संरचना करने के लिए सिर अंक अरिक्त मूल्य * छात्र और * अगले है:संरचना के पॉइंटर को हटाने से संरचना के भीतर पॉइंटर्स भी हटाए जाएंगे?
struct Listnode {
Student *student;
Listnode *next;
};
Listnode *head = new Listnode;
अगर मैं Listnode सूचक 'सिर' पर delete
आरक्षित शब्द का उपयोग यह भीतर विनाशकर्ता कॉल करेंगे वह छात्र वर्ग और लिस्टनोड वर्ग जो 'छात्र' और 'अगली' बिंदु-क्रमशः क्रमशः संरचना करता है। दूसरे शब्दों में, * हटाएगा * सिर भी हटाएगा * छात्र और * अगला मुहैया कराया गया वह हेड लिनोड
तो क्या आप संरचना के लिए विनाशक को कार्यान्वित कर सकते हैं? –
@PatMurray बिल्कुल! आप कक्षा में जो भी कर सकते हैं, आप भी 'स्ट्रक्चर' में कर सकते हैं। वास्तव में, केवल अंतर यह है कि प्रथम पहुंच घोषणा (सार्वजनिक, निजी, या संरक्षित) से पहले कक्षा के सदस्य निजी मानते हैं, जबकि एक ही संरचना के सदस्यों को सार्वजनिक माना जाता है। – dasblinkenlight
स्ट्रक्चर कक्षाओं की तरह उत्तराधिकारी हो सकते हैं, और डिफ़ॉल्ट विरासत का उपयोग कक्षाओं के लिए संरचना और निजी के लिए सार्वजनिक है। एक और अंतर, लेकिन एक ही लाइन के साथ। – MSalters