ptr_vector
प्रतिलिपि बनाने योग्य और कॉपी असाइन करने योग्य है। अंतर्निहित वस्तुओं की गहरी प्रतिलिपि कैसे हो सकती है जब यह उनके ठोस प्रकारों को नहीं जानता?बढ़ावा कैसे देता है :: ptr_vector अंतर्निहित वस्तुओं की गहरी प्रतिलिपि बनाता है?
6
A
उत्तर
8
boost::ptr_vector
कंटेनर का एक वैकल्पिक टेम्पलेट पैरामीटर, CloneAllocator
है, जो क्लोनिंग नीति को परिभाषित करता है। डिफ़ॉल्ट आवंटक heap_clone_allocator
है, जो किसी ऑब्जेक्ट को क्लोन करने के लिए कॉपी कन्स्ट्रक्टर को बस आमंत्रित करता है।
क्लोन आवंटन क्लोनिंग के आसपास संकेत की एक परत जोड़ने के तरीके के रूप में उपयोग किया जाता है। उदाहरण के लिए, यह आपको एक कस्टम आवंटक प्रदान करने की अनुमति देता है जो एक गैर-लोकप्रिय प्रकार के क्लोनिंग को सही तरीके से संभालता है।
आप the Boost Pointer Containers Library documentation में अधिक जानकारी प्राप्त कर सकते हैं, जो क्लोनबल और क्लोन ऑलोकेटर अवधारणाओं को बताता है।
संबंधित मुद्दे
- 1. क्या SqlCommand.Clone() एक गहरी प्रतिलिपि या उथली प्रतिलिपि बनाता है?
- 2. क्या कोई बढ़ावा :: फ़ंक्शन की प्रतिलिपि बंद करने की प्रतिलिपि बनाता है?
- 3. जेपीए इकाइयों की गहरी प्रतिलिपि
- 4. क्या एक गहरी प्रतिलिपि ऑपरेशन उप-सारणीयों की प्रतिलिपि बनाता है जिनके पास इसका स्वामित्व नहीं है?
- 5. बढ़ावा क्यों देता है :: noncopyable विरासत की आवश्यकता है
- 6. पेड़ दृश्य नोड्स की गहरी प्रतिलिपि
- 7. ptr_vector स्मृति का प्रबंधन कैसे करता है?
- 8. एक गहरी प्रतिलिपि लिखना - सूचक मूल्य प्रतिलिपि
- 9. कैसे बढ़ावा देता है :: unordered_map.emplace (Args && ... args) काम करता है?
- 10. बढ़ावा से तत्वों को मिटाने के लिए कैसे करें :: ptr_vector
- 11. एसवीएन शाखा में ट्रंक की प्रतिलिपि बना रहा है, ट्रंक फ़ोल्डर को प्रतिलिपि बनाता है?
- 12. पायथन मल्टीप्रोसेसिंग तर्क: गहरी प्रतिलिपि?
- 13. std :: runtime_error कन्स्ट्रक्टर में पारित स्ट्रिंग की प्रतिलिपि बनाता है?
- 14. कैसे बढ़ावा देता है :: spirit :: hold_any काम करता है?
- 15. मैं डेटटाइम ऑब्जेक्ट की गहरी प्रतिलिपि कैसे करूं?
- 16. सीयूडीए के साथ संरचना की गहरी प्रतिलिपि कैसे करें?
- 17. सी प्रोग्रामिंग। एक संरचना की गहरी प्रतिलिपि कैसे करें?
- 18. क्या एरलांग हमेशा एक ही नोड पर प्रक्रियाओं के बीच संदेशों की प्रतिलिपि बनाता है?
- 19. बढ़ावा :: program_options malloc त्रुटि देता है
- 20. स्थानीय_डेट_टाइम गणित को बढ़ावा देता है?
- 21. ऑब्जेक्ट की विधि की प्रतिलिपि प्रतिलिपि - प्रतिलिपि कौन करता है?
- 22. क्या सरणी पर क्लोन विधि गहरी या उथली प्रतिलिपि है?
- 23. क्या संख्यात्मक है। दोहराएं() एक गहरी प्रतिलिपि करें?
- 24. स्कैला में 2 डी सरणी की गहरी प्रतिलिपि?
- 25. प्रतिलिपि वस्तुओं कुशलतापूर्वक
- 26. क्या स्केल AnyRef.clone एक उथले या गहरी प्रतिलिपि करता है?
- 27. क्या फोरच प्रत्येक तत्व की प्रतिलिपि बनाता है यदि यह structs की सरणी है?
- 28. बिटमैप गहरी प्रतिलिपि बनाने के लिए कैसे करें
- 29. std वेक्टर सी ++ - गहरी या उथली प्रतिलिपि
- 30. किसी सरणी की गहरी प्रति कैसे बनाएं?
आह - इसलिए मुझे क्लोनबल अवधारणा का समर्थन करने की आवश्यकता है भले ही मेरी वस्तु प्रति-निर्माण योग्य हो? ऑब्जेक्ट नहीं होने पर दस्तावेज़ केवल क्लोनबल का उल्लेख करते हैं। –
@ बिली: यह मेरी समझ है। मैंने 'ptr_vector' का व्यापक रूप से उपयोग नहीं किया है, लेकिन इस तरह अन्य पॉइंटर कंटेनर मैंने हैंडल क्लोनिंग का उपयोग किया है। –
@ बिली: क्लोनबल आवश्यकता के आसपास पहुंचने के लिए आप 'heap_clone_allocator' के बजाय' view_clone_allocator' का भी उपयोग कर सकते हैं। फिर 'new_clone()' के लिए कोई अधिभार की आवश्यकता नहीं है। जाहिर है आप कंटेनरों को गहरी प्रतिलिपि नहीं बना सकते हैं। –