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

C++ में पॉइंटर्स बनाम रेफरेंस

पॉइंटर्स

पॉइंटर्स का उपयोग किसी वेरिएबल के पते को संग्रहीत करने के लिए किया जाता है।

सिंटैक्स

Type *pointer;

आरंभीकरण

Type *pointer; pointer = &variable_name;

रेफरेंस

जब किसी वेरिएबल को रेफरेंस के रूप में घोषित किया जाता है, तो यह किसी मौजूदा वेरिएबल का वैकल्पिक नाम बन जाता है।

सिंटैक्स

Type &newname = existing_name;

आरंभीकरण

Type &ref = variable_name;

पॉइंटर्स और रेफरेंस के बीच मुख्य अंतर

  • रेफरेंस किसी मौजूदा वेरिएबल को दूसरे नाम से संदर्भित करने के लिए उपयोग किए जाते हैं, जबकि पॉइंटर्स वेरिएबल के पते को संग्रहीत करने के लिए उपयोग किए जाते हैं।

  • रेफरेंस को नल मान नहीं दिया जा सकता, लेकिन पॉइंटर को दिया जा सकता है।

  • एक रेफरेंस वेरिएबल को पास-बाय-वैल्यू द्वारा संदर्भित किया जा सकता है, जबकि एक पॉइंटर को पास-बाय-रेफरेंस द्वारा संदर्भित किया जा सकता है।

  • रेफरेंस को घोषणा के समय आरंभ किया जाना चाहिए, जबकि पॉइंटर के लिए यह आवश्यक नहीं है।

  • एक रेफरेंस मूल वेरिएबल के समान मेमोरी एड्रेस साझा करता है लेकिन स्टैक पर कुछ स्थान भी लेता है, जबकि एक पॉइंटर का अपना मेमोरी एड्रेस और स्टैक पर आकार होता है।

  1. - C++ में पॉइंटर ऑपरेटर & क्या है?

    C++ दो पॉइंटर ऑपरेटर्स प्रदान करता है, जो हैं एड्रेस ऑफ ऑपरेटर (&) और इनडायरेक्शन ऑपरेटर (*)। एक पॉइंटर एक वेरिएबल है जो दूसरे वेरिएबल का पता रखता है या आप कह सकते हैं कि एक वेरिएबल जो दूसरे वेरिएबल का पता रखता है, उसे दूसरे वेरिएबल को पॉइंट टू करना कहा जाता है। एक वेरिएबल किसी भी डेटा प्रकार क

  1. - PHP रेफरेंसेस (References) - प्रतीक तालिका उपनाम

    परिचय PHP में, रेफरेंसेस (References) विभिन्न नामों से एक ही वेरिएबल सामग्री तक पहुँचने में सक्षम बनाते हैं। वे C/C++ में पॉइंटर्स की तरह नहीं हैं क्योंकि उनका उपयोग करके अंकगणितीय संक्रियाएँ करना संभव नहीं है। C/C++ में, वे वास्तविक मेमोरी पते हैं। PHP में इसके विपरीत, वे प्रतीक तालिका उपनाम (symb

  1. - C# में Pointers (पॉइंटर्स) क्या हैं?

    C# में पॉइंटर्स (Pointers) पॉइंटर एक वेरिएबल है जो **दूसरे वेरिएबल का मेमोरी एड्रेस** स्टोर करता है। C# में पॉइंटर्स केवल unsafe कॉन्टेक्स्ट में अनुमत हैं क्योंकि वे टाइप सेफ्टी और मेमोरी सेफ्टी को बायपास करते हैं। सिंटैक्स type* variableName; // C# स्टाइल // उदाहरण: int* p; // int पॉइंटर dou