2012-08-25 24 views
6

मुझे लगता है कि यह शायद पहले पूछा गया है, लेकिन संदर्भ के बाद (int & नाम) खोजकर्ताओं द्वारा संदर्भ गणना के समान ही लिया जाता है, एक भी चीज़ नहीं मिल सका।स्मार्ट पॉइंटर्स बनाम संदर्भ

स्मार्ट पॉइंटर्स के विकल्प के रूप में संदर्भों का उल्लेख क्यों नहीं किया गया है? क्या यह सिर्फ शून्य मामले के लिए है, या कुछ और है? या तो उपयोग करने के लिए क्या फायदे/नुकसान हैं?

उत्तर

7

मुझे लगता है कि आपकी शब्दावली मिश्रित है। एक संदर्भ और शब्द संदर्भ गिनती वास्तव में एक ही चीज़ के बारे में बात नहीं कर रहे हैं।

संदर्भ और स्मार्ट पॉइंटर्स, या उस मामले के पॉइंटर्स भी बहुत अलग हैं और विनिमय नहीं कर सकते हैं।

एक संदर्भ का शोध नहीं किया जा सकता है। मतलब यह है कि एक बार आपके पास संदर्भ हो जाने पर, यह केवल उस चीज़ को संदर्भित कर सकता है जिसे प्रारंभ में संदर्भित किया गया था। एक संदर्भ केवल एक स्मृति पता है।

दूसरी ओर एक सूचक, स्मृति पते को इंगित करता है; इसे अलग-अलग मेमोरी पतों पर इंगित करने के लिए बदला जा सकता है।

जब कोई कहता है कि कोई स्मार्ट पॉइंटर संदर्भ गिनती करता है, तो उनका मतलब है कि स्मार्ट पॉइंटर इस बात की गिनती कर रहा है कि कितनी ऑब्जेक्ट्स स्मार्ट पॉइंटर इंगित करने वाली स्मृति को संदर्भित कर रही हैं। यह एक संदर्भ से अलग है।

मुझे उम्मीद है कि इससे मदद मिलती है।

+0

मुझे अच्छी तरह पता है कि संदर्भ और संदर्भ गिनती समान नहीं है। यह Google और यहां एक खोजकर्ता है, जो अंतर (संदर्भ) नहीं देख सकता है और संदर्भ और स्मार्ट पॉइंटर्स – efaj

+0

के बजाय संदर्भ गिनती और स्मार्ट पॉइंटर्स से संबंधित साइटों को दिखा सकता है, लेकिन मुझे संदर्भ नहीं पता था कुछ और संदर्भित करने के लिए स्विच/स्वैप या बनाया नहीं जाएगा। अब इसके साथ ... यह स्पष्ट है कि वे स्मार्ट पॉइंटर्स को क्यों नहीं बदलते हैं। – efaj