Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में ऑब्जेक्ट और क्लास के बीच अंतर

इस पोस्ट में, हम C++ प्रोग्रामिंग लैंग्वेज के संबंध में किसी ऑब्जेक्ट और क्लास के बीच के अंतर को समझेंगे।

C++ में कक्षाएं

  • यह C++ में कोड का एक बिल्डिंग ब्लॉक है जो ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग को लागू करने में मदद करता है।
  • यह एक प्रकार है जिसे उपयोगकर्ता द्वारा परिभाषित किया जाता है।
  • यह अपने स्वयं के डेटा सदस्यों और सदस्य कार्यों को रखता है।
  • इन डेटा सदस्यों और सदस्य कार्यों को कक्षा का एक उदाहरण बनाकर पहुँचा जा सकता है।
  • वे चर में हेरफेर करने के लिए इस्तेमाल किया जा सकता है और संपत्ति को परिभाषित करने के लिए इस्तेमाल किया जा सकता है यह बताने के लिए कि कक्षा में वस्तुओं को कैसे कार्य करना है।
  • इसे किसी वस्तु के ब्लूप्रिंट के रूप में समझा जा सकता है।
    • उदाहरण:कर्मचारियों के वर्ग पर विचार करें। कर्मचारी का नाम, आयु, जन्म तिथि, शीर्षक, इत्यादि जैसी कई विशेषताएं हो सकती हैं।
    • इन्हें डेटा सदस्य कहा जाता है।
    • सदस्य कार्य 'draw_salary', 'get_promotion' हो सकते हैं, जो वर्ग वस्तुओं के संबंध में कुछ क्रियाएं करते हैं।
    • ये सभी कर्मचारियों द्वारा साझा की जाने वाली सामान्य संपत्तियां होंगी।
  • इसे 'class' कीवर्ड का उपयोग करके परिभाषित किया गया है।
  • इसके बाद कक्षा का नाम आता है।
  • वर्ग के मुख्य भाग को फूलों के कोष्ठकों में परिभाषित किया गया है, और अर्ध-कोलन का उपयोग करके समाप्त किया गया है।
class class_name {
   body_of_class
};

C++ में ऑब्जेक्ट

  • एक वस्तु एक वर्ग का एक उदाहरण है।
  • जब किसी वर्ग को परिभाषित किया जाता है, तो उसे स्मृति आवंटित नहीं की जाती है।
  • जिस क्षण कोई वस्तु बनाई जाती है, स्मृति कक्षा की सभी विशेषताओं को आवंटित हो जाती है।
  • जब एक वर्ग परिभाषित किया जाता है, तो वस्तु की विशिष्टताएं परिभाषित की जाती हैं।
  • यदि उस वर्ग का उपयोग करना है, और संचालन करने की आवश्यकता है, तो एक वस्तु बनाने की आवश्यकता है।
  • ऑब्जेक्ट को नीचे दिए गए सिंटैक्स का उपयोग करके स्पष्ट रूप से बनाया जाना है।
class_name object_name;
  • किसी वर्ग के डेटा सदस्यों और सदस्य कार्यों को डॉट ('.') ऑपरेटर की मदद से किसी ऑब्जेक्ट द्वारा एक्सेस किया जा सकता है।
    • उदाहरण:मान लें कि आवश्यक विशेषताओं और सदस्य कार्यों के साथ एक वर्ग बनाया गया है।
    • एक बार उस वर्ग के संबंध में एक वस्तु बन जाने के बाद, सदस्य कार्यों को नीचे दिए गए तरीके से एक्सेस किया जा सकता है:
object_name.member_function()
  • डेटा सदस्य जो प्रकृति में सार्वजनिक हैं, उन्हें उसी तरीके से एक्सेस किया जा सकता है, जैसा कि ऊपर दिखाया गया है, अर्थात '.' का उपयोग करके। ऑपरेटर।
  • सार्वजनिक सदस्य वे हैं जिन्हें 'सार्वजनिक' कीवर्ड का उपयोग करके परिभाषित किया गया है।
  • निजी सदस्य वे हैं जिन्हें 'निजी' कीवर्ड का उपयोग करके परिभाषित किया गया है।
  • इन सदस्यों को वस्तु द्वारा सीधे पहुँचा नहीं जा सकता।
  • 'सार्वजनिक', 'निजी' और 'संरक्षित' कीवर्ड डेटा सदस्यों के अभिगम नियंत्रण के रूप में जाने जाते हैं।
  • सदस्य फ़ंक्शन जिन्हें कक्षा के अंदर परिभाषित किया गया है, उन्हें डिफ़ॉल्ट रूप से इनलाइन माना जाता है।
  • इनलाइन फंक्शन एई वे हैं जो फंक्शन परिभाषित होने के ठीक बाद विस्तारित होते हैं। कोड संकलित होने पर उन्हें हर जगह कॉपी किया जाता है (मैक्रोज़ के समान)। इसका मतलब है कि फ़ंक्शन को कॉल करने का ओवरहेड कम हो गया है।
  • किसी भी गैर-वर्गीय फ़ंक्शन को 'इनलाइन' कीवर्ड को संलग्न करके इनलाइन फ़ंक्शन के रूप में बनाया जा सकता है।

  1. C++ में निजी, सार्वजनिक और संरक्षित संशोधक के बीच अंतर

    डेटा छिपाना ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग की महत्वपूर्ण विशेषताओं में से एक है जो किसी प्रोग्राम के कार्यों को एक वर्ग प्रकार के आंतरिक प्रतिनिधित्व को सीधे एक्सेस करने से रोकता है। क्लास के सदस्यों के लिए एक्सेस प्रतिबंध लेबल किए गए एक्सेस मॉडिफ़ायर - क्लास बॉडी के भीतर सार्वजनिक, निजी और संरक्षित

  1. C++ में डॉट (.) ऑपरेटर और -> में क्या अंतर है?

    डॉट और एरो ऑपरेटर दोनों का उपयोग C++ में किसी वर्ग के सदस्यों तक पहुंचने के लिए किया जाता है। वे बस विभिन्न परिदृश्यों में उपयोग किए जाते हैं। सी ++ में, वर्ग, संरचना, या संघ के रूप में घोषित प्रकारों को वर्ग प्रकार माना जाता है। तो निम्नलिखित उन तीनों को संदर्भित करता है। a.b का उपयोग केवल तभी किय

  1. सी # में कक्षा और संरचना के बीच अंतर

    वर्ग और संरचना के बीच अंतर करने के लिए, हमें पहले यह समझना होगा कि संरचना और वर्ग दोनों डेटा को रखने और परिभाषित करने के संदर्भ में समान प्रतीत होते हैं। ये दोनों अपने डेटा सदस्यों में कुछ डिफ़ॉल्ट मानों को परिभाषित करने के साथ-साथ कुछ डिफ़ॉल्ट मान भी रख सकते हैं। लेकिन अगर हम उन्हें इस संदर्भ से पर