खाली सी कक्षाओं के गैर-शून्य आकार के पीछे की पहेली
सी में, यह धारणा प्रतीत हो सकती है कि एक खाली वर्ग कोई मेमोरी नहीं लेगा अंतर्ज्ञान. हालाँकि, इस धारणा को अजीबोगरीब व्यवहार से चुनौती मिलती है जहाँ किसी भी सदस्य से रहित वर्ग भी गैर-शून्य आकार प्रदर्शित करते हैं। यह स्पष्ट विरोधाभास क्यों मौजूद है?
जैसा कि यह पता चला है, सी मानक स्पष्ट रूप से वस्तुओं और उनके संबंधित वर्गों को शून्य आकार रखने से रोकता है। यह शर्त अलग-अलग वस्तुओं के बीच अंतर करने की अंतर्निहित आवश्यकता से उत्पन्न होती है जो संभावित रूप से समान मेमोरी स्पेस साझा करती हैं। यह दो अलग-अलग वस्तुओं को समान मेमोरी पते रखने से रोकता है, क्योंकि ऐसी स्थिति अप्रत्याशित और अवांछित व्यवहार को जन्म देगी। जैसे वर्चुअल फ़ंक्शन टेबल और पॉइंटर सदस्य। ये आवश्यक घटक कक्षा के आकार में योगदान करते हैं, हालांकि उपयोगकर्ता के लिए अदृश्य होते हैं, इस प्रकार खाली कक्षाएं भी गैर-शून्य मात्रा में मेमोरी पर कब्जा कर लेती हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3