संदर्भ उसी तरह से काम नहीं करते हैं जैसे कि संकेत: बिंदुओं के लिए आपके पास 'कॉन्स्ट पॉइंटर्स' ( type * const p
) और 'पॉइंटर टू कॉन्स्ट' ( const type * p
या type const * p
) हो सकते हैं।
लेकिन आपके पास संदर्भ के लिए यह नहीं है: एक संदर्भ हमेशा एक ही वस्तु को संदर्भित करेगा; उस अर्थ में आप इस पर विचार कर सकते हैं कि 'संदर्भ' 'कास्ट रेफरेंस' हैं (ठीक उसी तरह जैसे आपके पास 'कास्ट पॉइंटर्स' हो सकते हैं)।
इसलिए 'टाइप एंड कास्ट रेफरी' जैसा कुछ कानूनी नहीं है। आपके पास केवल 'प्रकार का संदर्भ' ( type &ref
) और 'निरंतर प्रकार का संदर्भ' हो सकता है ( const type &ref
या type const &ref
; दोनों बिल्कुल बराबर हैं)।
एक आखिरी चीज: भले ही const type
अंग्रेजी में अधिक सही लगता है, लेखन type const
"घोषणाएं" बाएं से दाएं की घोषणाओं की अधिक व्यवस्थित समझ की अनुमति देता है: int const & ref
पढ़ा जा सकता है 'रेफ एक निरंतर अंतर का संदर्भ है'। या अधिक जटिल उदाहरण: int const * const & ref
रेफ एक स्थिर पॉइंटर से एक स्थिर इंट का संदर्भ है।
निष्कर्ष: आपके प्रश्न में, दोनों बिल्कुल बराबर हैं।