सी ++ 17 विनिर्देश construct
और destroy
std::allocator
ऑब्जेक्ट के सदस्यों को हटा देता है। कार्यकारी समूह ने अन्य सदस्य कार्यों here को "std :: आवंटक के अनावश्यक सदस्यों को कम करने" शीर्षक के तहत, अन्य सदस्य कार्यों को बहिष्कृत करने के लिए तर्क प्रदान किया।क्यों std :: आवंटक का निर्माण और C++ 17 में बहिष्कृत कार्यों को नष्ट कर रहे हैं?
हालांकि वे विशेष रूप से उल्लेख नहीं करते हैं कि उन दो सदस्यों को बहिष्कृत क्यों किया गया है या उस कार्यक्षमता को बदलने के लिए सिफारिश क्या है। मुझे लगता है कि निहितार्थ इसके बजाय std::allocator_traits::construct
का उपयोग करना है।
मैं थोड़ा के बारे में है कि क्या लागू करने construct
वास्तव में अभी भी कुछ मामलों में आवश्यक हो सकता है संदेह में हूँ हालांकि वजह से this comment about std::allocator_traits::construct
क्योंकि इस समारोह स्वत: गिरावट वापस नियुक्ति नया करने के लिए प्रदान करता है, सदस्य समारोह निर्माण() सी ++ 11 के बाद से एक वैकल्पिक आवंटक आवश्यकता है।
(memalign
का उपयोग कर जैसे पेज गठबंधन स्मृति के लिए) कस्टम allocators के लिए, प्लेसमेंट new
पर वापस गिरने जाएगा हमेशा सही व्यवहार का उत्पादन?
हाँ मैं बहुत ज्यादा सवाल में जितना कहा। –