के लिए कस्टम इंसर्टर std::vector
को देखते हुए जिसमें MyClass की ऑब्जेक्ट्स हैं। मैं एक और वेक्टर कैसे बना सकता हूं जिसमें std::copy
का उपयोग करके MyClass के एक सदस्य का डेटा हो? मुझे लगता है कि मुझे एक कस्टम back_inserter
लागू करना होगा, लेकिन मैं यह नहीं समझ पाया कि अब तक यह कैसे करें।std :: copy
struct MyClass {
int a;
}
std::vector<MyClass> vec1;
// I could copy that to another vector of type MyClass using std::copy.
std::copy(vec1.begin(), vec1.end(); std::back_inserter(someOtherVec)
// However I want just the data of the member a, how can I do that using std::copy?
std::vector<int> vec2;
'std :: copy' तत्वों को संशोधित किए बिना सादे प्रतिलिपि के लिए है। 'std :: transform' आपको प्रत्येक तत्व में परिवर्तन लागू करने की अनुमति देता है, और उसके बाद रूपांतरण के आउटपुट को संग्रहीत करता है। जो आप चाहते हैं वही है। :) – jalf
वाह बहुत सारे जवाब, thx! – Nils