वर्ग और संरचना के बीच अंतर करने के लिए, हमें पहले यह समझना होगा कि संरचना और वर्ग दोनों डेटा को रखने और परिभाषित करने के संदर्भ में समान प्रतीत होते हैं। ये दोनों अपने डेटा सदस्यों में कुछ डिफ़ॉल्ट मानों को परिभाषित करने के साथ-साथ कुछ डिफ़ॉल्ट मान भी रख सकते हैं। लेकिन अगर हम उन्हें इस संदर्भ से परे मानते हैं तो क्लास संरचना की तुलना में कार्यक्षमता के साथ-साथ अधिक लचीलापन प्रदान करता है।
वर्ग और संरचना के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।
<टेबल> <थेड> सीनियर। नहीं. | <वें शैली ="चौड़ाई:13.4693%;">कुंजी <वें शैली ="चौड़ाई:39.4559%;">कक्षा <वें>संरचना
थड> 1 | डेटा प्रकार | कक्षा में परिभाषित डेटा को एक संदर्भ के रूप में मेमोरी में संग्रहीत किया जाता है और एक्सेस करने के लिए इसका विशेष पता होता है, इसलिए इसे कहा जा सकता है कि कक्षाएं संदर्भ प्रकार की होती हैं। | दूसरी ओर संरचना के मामले में डेटा सदस्य का मूल्य सीधे या तो स्टैक या इनलाइन युक्त प्रकारों में संग्रहीत हो जाता है, इसलिए संरचनाओं को मान प्रकार के रूप में माना जाता है। |
2 | संग्रहण | जैसा कि उपरोक्त बिंदु में बताया गया है, डेटा सदस्यों को क्लास के मामले में संदर्भ के रूप में संग्रहीत किया जाता है और संदर्भ प्रकार हीप मेमोरी पर आवंटित किए जाते हैं। | दूसरी ओर संरचना में प्रत्यक्ष मूल्य संग्रहीत किया जाता है ताकि मूल्य प्रकार स्टैक मेमोरी पर आवंटित किए जा सकें। |
3 | कन्स्ट्रक्टर | कक्षाओं को कंस्ट्रक्टर के साथ-साथ डी-कंस्ट्रक्टर के साथ परिभाषित किया जा सकता है क्योंकि इसमें उनकी कार्यक्षमता लागू है। | दूसरी ओर संरचना में कंस्ट्रक्टर या डी-कंस्ट्रक्टर नहीं हो सकता क्योंकि इसमें ऐसा कोई कार्यान्वयन प्रदान नहीं किया गया है। |
4 | तत्काल करें | कक्षा के रूप में कंस्ट्रक्टर के साथ पेश किया गया जिसकी मदद से क्लास अपने उदाहरण को नए कीवर्ड के साथ इंस्टेंट कर सकता है। | दूसरी ओर संरचना नए कीवर्ड के बिना एक उदाहरण बना सकती है। |
5 | विरासत | वर्ग अपने मूल वर्ग से गुण प्राप्त कर सकता है क्योंकि यह वंशानुक्रम सुविधा का समर्थन करता है। | दूसरी ओर संरचना वंशानुक्रम का समर्थन नहीं करती है। |
6 | संरक्षित संशोधक | हम वर्ग में परिभाषित डेटा सदस्यों के साथ संरक्षित संशोधक का उपयोग कर सकते हैं क्योंकि कक्षा संरक्षित संशोधक का समर्थन करती है। | दूसरी ओर संरचना संरक्षित संशोधक का समर्थन नहीं करती है। |