हम सभी जानते हैं कि आरएडब्लू पॉइंटर्स को कुछ प्रकार के स्मार्ट पॉइंटर में अपवाद सुरक्षित मेमोरी प्रबंधन प्राप्त करने की आवश्यकता है। लेकिन जब पॉइंटर्स के कंटेनर की बात आती है तो समस्या अधिक कांटेदार हो जाती है।पॉइंटर्स और कंटेनर
एसटीडी कंटेनर निहित वस्तु copyable किया जा रहा है पर जोर देते हैं तो यह std :: auto_ptr के उपयोग के बाहर शासन करता है, लेकिन तब भी आप को बढ़ावा देने :: shared_ptr आदि
उपयोग कर सकते हैं लेकिन वहाँ भी कुछ बढ़ावा स्पष्ट रूप से तैयार किया गया कंटेनर हैं संकेत सुरक्षित रूप धारण करने के लिए:
देखें Pointer Container Library
सवाल यह है: किन स्थितियों मैं smart_pointers के एक कंटेनर से अधिक ptr_containers का उपयोग करना पसंद करना चाहिए के तहत?
boost::ptr_vector<X>
or
std::vector<boost::shared_ptr<X> >
यह संभव है और कभी-कभी सबसे अच्छा विकल्प होता है, लेकिन यदि किसी वर्ग में 2 या अधिक रॉ पॉइंटर्स अपवाद सुरक्षित बनाते हैं तो यह मामूली नहीं है। लेकिन मुझे सवाल का जवाब न देने के लिए आपको नीचे चिह्नित करना चाहिए। –