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

C++ में इनलाइन और मैक्रो के बीच अंतर


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

इनलाइन

  • यह C++ में एक फंक्शन है।

  • इसे कंपाइलर द्वारा पार्स किया जाता है।

  • इसे कक्षा के अंदर या बाहर परिभाषित किया जा सकता है।

  • यह केवल एक बार तर्क का मूल्यांकन करता है।

  • संकलक सभी कार्यों को 'इनलाइन' फ़ंक्शन में परिवर्तित नहीं कर सकता है और उन सभी का विस्तार नहीं कर सकता है।

  • कक्षा के अंदर परिभाषित छोटे कार्यों को स्वचालित रूप से इनलाइन कार्यों के रूप में बनाया जाता है।

  • कक्षा के अंदर एक इनलाइन फ़ंक्शन कक्षा के डेटा सदस्यों तक पहुंच सकता है।

  • इनलाइन फ़ंक्शन को घुंघराले कोष्ठक का उपयोग करके समाप्त किया जा सकता है।

  • डीबग करना आसान है।

  • ऐसा इसलिए है क्योंकि संकलन के दौरान त्रुटि जाँच की जाती है।

  • यह फ़ंक्शन के मुख्य भाग में सभी कथनों को बांधता है।

उदाहरण

inline return_type funct_name ( parameters ) {
   . . .
}

मैक्रो

  • इसे प्रीप्रोसेसर द्वारा विस्तारित किया जाता है।

  • इसे कार्यक्रम की शुरुआत में परिभाषित किया गया है।

  • यह हर बार कोड के अंदर उपयोग किए जाने वाले तर्क का मूल्यांकन करता है।

  • उन्हें हमेशा विस्तारित/विस्तारित करने की आवश्यकता होती है।

  • उन्हें विशेष रूप से परिभाषित करने की आवश्यकता है।

  • वे कभी भी कक्षा के सदस्य नहीं बनेंगे।

  • वे कक्षा के डेटा सदस्यों तक नहीं पहुंच सकते।

  • मैक्रो की परिभाषा नई लाइन के साथ समाप्त होती है।

  • मैक्रोज़ को डीबग करना मुश्किल है क्योंकि संकलन समय के दौरान त्रुटि जाँच नहीं होती है।

  • यदि इसमें एक से अधिक कथन शामिल हैं, तो यह बाध्यकारी समस्या का सामना करता है क्योंकि इसमें समाप्ति का प्रतीक नहीं है।

उदाहरण

#define macro_name char_sequence

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

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

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

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

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

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