संभव डुप्लिकेट:
C++: What is the size of an object of an empty class?सी ++ में खाली कक्षा का आकार शून्य क्यों नहीं है?
क्यों निम्नलिखित उत्पादन 1
करता है? दो अलग-अलग वस्तुओं एक ही स्मृति का पता करने के लिए के लिए के बाद से है कि यह संभव होगा
#include <iostream>
class Test
{
};
int main()
{
std::cout << sizeof(Test);
return 0;
}
एक डमी प्लेसहोल्डर सदस्य है जिसका आकार एक बाइट होता है। चूंकि टेस्ट [10] की एक सरणी के लिए, प्रत्येक ऑब्जेक्ट का एक अद्वितीय पता होना चाहिए। – legends2k
हालांकि एक खाली अनुकूलन 'खाली बेस ऑप्टिमाइज़ेशन' है, जिसका अर्थ है कि यदि आप खाली बेस क्लास (कोई विशेषता नहीं, कोई वर्चुअल विधियों) से प्राप्त नहीं होते हैं, तो आपका वर्ग का आकार नहीं बढ़ेगा। कई (अन्य) स्थितियां हैं, लेकिन यह बताती है कि कुछ परिस्थितियों में भविष्यवाणी से निजी रूप से विरासत क्यों प्राप्त होती है। –
[इसी तरह के प्रश्न 1] (http://stackoverflow.com/questions/1626446) और [समान प्रश्न 2] (http://stackoverflow.com/questions/621616/)। – Lazer