मैं यह पूछता हूं क्योंकि यह कई स्पष्ट कारणों से एक कमजोर प्रतिबंध है, लेकिन मुझे यकीन है कि सी ++ मानक लोगों के पास ऐसा करने का एक अच्छा कारण था, और मैं जानना चाहता हूं कि यह क्या है। ऐसा नहीं है क्योंकि इससे कोई फर्क नहीं पड़ता है, लेकिन इससे मुझे यह जानकर बेहतर महसूस होगा कि इसके लिए एक अच्छा कारण है।क्यों कमजोर पॉइंटर्स अंतर्निहित सूचक का उपयोग नहीं कर सकते हैं?
यहां मेरा वर्तमान लेना है; जैसा कि मैंने देखा है कि कमजोर पॉइंटर्स के 2 मुख्य उपयोग हैं:
1) स्वामित्व लूप से बचने के लिए। 2) साझा पॉइंटर्स के आस-पास उछाल से जुड़े ओवरहेड को कम करने के लिए।
पूर्व को कम सेवा नहीं दी जाएगी और बाद में कमजोर_ptr.get() को लागू करके बेहतर सेवा दी जाएगी, तो यह क्यों अस्तित्व में नहीं है? बिंदु के लिए, कमजोर_ptr.get() कमजोर_ptr.lock() से अधिक कुशल नहीं होगा।() प्राप्त करें, या एक संकलक इसे अनुकूलित करने के लिए अनुकूलित कर सकता है?
बूस्ट प्रलेखन में एक स्पष्टीकरण है कि 'weak_ptr'' get() ': [बूस्ट 1.43.0: weak_ptr] (http://www.boost.org) जैसे विधि का उपयोग करके कच्चे सूचक को वापस नहीं करेगा। /doc/libs/1_43_0/libs/smart_ptr/weak_ptr.htm)। – Pixelchemist
पढ़ा जाएगा। धन्यवाद। – arman