कहते हैं कि एक आधार वर्ग सूचक है जो एक आधार वर्ग वस्तु की ओर इशारा करते है है की सुविधा देता है?सी ++ साक्षात्कार प्रश्न से जुड़े वर्ग संकेत
उत्तर
स्पष्ट उत्तर यह है कि आप मूल बेस क्लास ऑब्जेक्ट लीक कर रहे हैं।
आप पिछले ऑब्जेक्ट के लिए आवंटित स्मृति को जारी किये बिना पॉइंटर को पुन: असाइन कर रहे हैं। इसका परिणाम स्मृति रिसाव हो सकता है, अगर किसी अन्य निकाय ने इसे पुन: असाइन करने से पहले bptr
के मान को संग्रहीत नहीं किया है।
पहली पंक्ति में, आपने एक सूचक घोषित किया। दूसरी पंक्ति में, आप इसे स्मृति में संदर्भ देते हैं। लाइन 3 में , आप स्मृति में आईटी को एक और संदर्भ देते हैं।
पॉइंटर को दिया गया पहला संदर्भ लीक हो गया है ... आप इसे कभी वापस नहीं प्राप्त कर सकते हैं।
क्या baseclass
एक आभासी विनाशक है? यदि नहीं, तो यह भी बुरा हो सकता है (स्पष्ट रिसाव के अतिरिक्त)।
स्पष्ट स्मृति के अलावा रिसाव यह baseclass
और derived
की परिभाषा समस्याओं में से कुछ हो सकता है पर निर्भर करता है:
derived
सार्वजनिक रूप सेbaseclass
से प्राप्त नहीं है (यदि ऐसा है तो यह एक भयानक सवाल एक में पूछने के लिए है साक्षात्कार)baseclass
एक आभासी नाशक (जिस स्थिति में यहdelete bptr;
के लिए असुरक्षित है) नहीं है
था वह करने की कोशिश कर Circle Ellipse problem पर जाएं? यदि व्युत्पन्न बेसक्लास का विशेषज्ञता है बेसक्लास पर कुछ सार्वजनिक तरीकों का अर्थ अब नहीं हो सकता है उदा। यदि सर्कल को एलीप्स से निकाला जाता है और एलीपसे में खिंचाव() होता है जो एक धुरी में अंडाकार फैलाता है, तो सर्किल के उदाहरण पर विधि कहने पर आप क्या करते हैं?
एकमात्र समस्या तब होती है जब वर्ग विनाशक को वर्चुअल के रूप में परिभाषित नहीं किया जाता है। इस परिदृश्य में, यह स्मृति रिसाव
वहाँ कोई वाक्य रचना समस्या है, लेकिन आप एक नया मान "bptr" चर बताए द्वारा "baseclass" उदाहरण के पते खो रहे हैं कारण होगा। इसका परिणाम स्मृति रिसाव में होता है, क्योंकि पहली instanciated कक्षा का पता खो जाता है।
अगर मैं तुम्हें थे मैं वापस कर देते हैं और सवालों का अपने साक्षात्कारकर्ता जोड़ी पूछना होगा:
- आप यकीन है कि यह केवल कोड उपलब्ध टुकड़ा है और उस मामले में मेरा उत्तर में सही अनुमान लगाने, और अधिक कुछ भी नहीं है कर रहे हैं।
- क्या बेसक्लास के लिए मेमोरी एमजीएमटी योजना का कुछ प्रकार है और व्युत्पन्न है? उस स्थिति में हमें ऑपरेटर की नई परिभाषाओं को देखने की ज़रूरत है जो प्रदान नहीं की जाती है।
- यदि कोई मेमोरी mgmt नहीं है, तो बेसक्लास या व्युत्पन्न स्मार्ट पॉइंटर प्रकार हैं जो संदर्भ गणना करते हैं? उन मामलों में कोई रिसाव नहीं है।
- यदि कोई स्मार्ट प्रकार नहीं है, तो निश्चित रूप से यह एक स्मृति रिसाव की तरह दिखता है।
और कृपया, वर्चुअल विनाशक इत्यादि केवल तभी आते हैं जब आपके पास कक्षा परिभाषाएं हों। शायद साक्षात्कारकर्ता गुप्त रूप से आकर्षक प्रकार की तलाश में है।
अर्पण
+1, कभी-कभी प्रश्न भी उत्तर हो सकते हैं .. :) – liaK
कि समस्या क्या यहाँ है?
("एक स्मृति रिसाव") का जवाब स्वीकार नहीं किया है, तो समस्या न तो प्रश्न साक्षात्कारकर्ता है;)
मैं तो जैसे इस साक्षात्कार सवाल का जवाब चाहते हैं:
सीमित कोड स्निपेट से प्रदान किया गया है कि यह स्पष्ट है कि जब हम इस व्युत्पन्न वर्ग के उदाहरण के लिए पॉइंटर असाइन करते हैं तो स्मृति मेमोरी तब लागू होगी, क्योंकि हमारे पास मूल ऑब्जेक्ट तक पहुंचने वाले कोई अन्य पॉइंटर्स नहीं हैं। हालांकि, दोनों वर्गों की परिभाषाओं को देखे बिना, और दो वर्गों के बीच संबंधों को देखे बिना कोड स्निपेट के बारे में और कहना असंभव है।
- 1. सी साक्षात्कार प्रश्न
- 2. सी # जेनेरिक्स - अजीब साक्षात्कार प्रश्न
- 3. Google साक्षात्कार प्रश्न
- 4. MySQL साक्षात्कार प्रश्न
- 5. एचटीएमएल साक्षात्कार प्रश्न
- 6. सी संकेत दिए गए प्रश्न
- 7. सी # संभावित साक्षात्कार प्रश्न ... बहुत मुश्किल है?
- 8. लुसीन साक्षात्कार प्रश्न
- 9. अच्छा आर्किटेक्चर साक्षात्कार प्रश्न
- 10. साक्षात्कार प्रश्न: रिवर्स जोड़े
- 11. डब्ल्यूपीएफ/सिल्वरलाइट साक्षात्कार प्रश्न?
- 12. हैशटेबल और डिक्शनरी से संबंधित साक्षात्कार प्रश्न
- 13. सीयूडीए प्रोग्रामिंग पर साक्षात्कार प्रश्न?
- 14. JQuery साक्षात्कार प्रश्न (एडवांस तक शुरुआती से)
- 15. सी ++ वर्ग प्रश्न
- 16. क्लासिक स्ट्रिंग मैनिपुलेशन साक्षात्कार प्रश्न?
- 17. फ़्रंट-एंड डेवलपर साक्षात्कार प्रश्न
- 18. साक्षात्कार प्रश्न: factorials और कैशिंग
- 19. एक अभ्यास साक्षात्कार के प्रश्न का उत्तर
- 20. सिंगलटन कोड अंश, एक साक्षात्कार-प्रश्न
- 21. सी ++ शुद्ध आभासी वर्ग प्रश्न
- 22. सी # और वीबीनेट समानताओं/मतभेदों पर साक्षात्कार प्रश्न
- 23. मेरी साक्षात्कार प्रश्न पर विचार की जरूरत है - .net, सी #
- 24. क्यूटी संकेत और विरासत प्रश्न
- 25. जावा: सॉफ़्टवेयर परीक्षक के लिए साक्षात्कार प्रश्न?
- 26. साक्षात्कार प्रश्न: क्या समझने में मुश्किल है?
- 27. साक्षात्कार प्रश्न में ज्ञान के लिए एसक्यूएल
- 28. अजीब सी साक्षात्कार सवाल
- 29. साक्षात्कार:
- 30. प्रश्न ++ भीतरी वर्ग
क्या आपके पास सिर्फ यह या कक्षाओं की घोषणा थी? – Nikko
मैं एक असंगत नामकरण योजना के साथ जाने जा रहा हूं। यदि आपके पास 'बेसक्लास' तार्किक रूप से है तो आपके पास 'derivedclass' भी होगा। इसके अलावा, दूरी सभी प्रकार के गलत है। * हर कोई * जानता है कि क्षैतिज प्रकार के साथ संबंधित है, चर नहीं। –
@ डेनिस तार्किक रूप से तारांकन प्रकार से संबंधित है लेकिन वाक्य रचनात्मक रूप से यह चर से संबंधित है। इसे आज़माएं और मुझे बताएं कि क्या पीआरटी 2 एक सूचक है या नहीं: 'MyClass * ptr1, ptr2; '। –