2010-11-09 18 views
7

मैं एक फ़ंक्शन के लिए C++ दस्तावेज़ देख रहा हूं जो चालक अर्थशास्त्र का उपयोग करके एक कंटेनर से दूसरे तत्वों में तत्वों को स्थानांतरित करेगा। हालांकि, मुझे ऐसा कोई काम नहीं मिला है। मैं क्या खो रहा हूँ?कंटेनर के बीच तत्वों की एक श्रृंखला ले जाएँ?

स्पष्ट लूप की प्रतिलिपि बनाने और उपयोग किए बिना मैं निम्नलिखित कैसे करूं?

// Move 10 elements from beginning of source to end of dest 
dest.end() <- move(source.begin(), source.begin() + 10) 

उत्तर

7

मुझे लगता है कि आप <algorithm> में std::move लिए देख रहे हैं:

std::move(source.begin(), source.begin() + 10, 
      std::insert_iterator(dest, dest.end())); 

यह सिवाय इसे स्थानांतरित-प्रदान करती है कॉपी-प्रदान करती है के बजाय सिर्फ std::copy तरह है,।

+0

मुझे उस फ़ंक्शन के लिए संदर्भ दस्तावेज़ कहां मिल सकता है? मैं googling गया है और सी ++ 0x अंतिम मसौदे को देख रहा है ... इसे नहीं लग रहा है। – ronag

+1

@ronag: मैंने n3126 में §25.3.2 देखा। – GManNickG

+0

ग्रेट। धन्यवाद। – ronag

संबंधित मुद्दे