मैंने देखा कि std :: वेक्टर की इसकी elememt प्रकार टी पर आवश्यकताओं को C++ 03 से C++ 0x में बदल दिया गया है। टी को अब रचनात्मक प्रतिलिपि बनाने की आवश्यकता नहीं है, लेकिन रचनात्मकता पर्याप्तता को स्थानांतरित करें।क्या वेक्टर तत्वों को चलने की आवश्यकता है?
क्या यह टी के लिए आवश्यक है भले ही हम संभावित रूप से पुन: आवंटित न करें?
vector<boost::scoped_ptr<int>> x(numberElements);
मुझे यहां एक कदम की आवश्यकता नहीं दिख रही है। विनिर्देश क्या कहता है?
ठीक है, यह मानक द्वारा आवश्यक है ... भले ही आपका वास्तविक कार्यान्वयन स्थिर वस्तुओं के साथ ठीक काम कर सके। –
@kerrek मुझे ऐसा लगता है कि यह 'नए' सरणी की तुलना में एक प्रमुख विशेषता हानि है। आवश्यकता के कारण क्या है? –
आप "केवल एक बार" आवंटन के लिए हमेशा 'std :: unique_ptr पी (नया टी [एन])' प्राप्त कर सकते हैं। आवश्यकता मानक कंटेनर आवश्यकताओं का सिर्फ एक हिस्सा है ... मुझे नहीं पता * क्यों * इसमें अवधारणा को सरल रखने के अलावा अन्य विशेष अपवाद नहीं हैं। उदाहरण के लिए, आप अपने स्वयं के समाधान के रूप में सी ++ 11 में सटीक उसी जेनरेट कोड के लिए 'std :: vector >' का उपयोग कर सकते हैं, इसलिए यह वास्तव में किसी भी अर्थ में कम नहीं आ रहा है। –