मुझे लगता है कि यह एक साधारण सवाल है। मैं इस तरह से कुछ करने की जरूरत है: के बाद से वहाँ कोई push_back
हैstd :: back_inserter एक std :: set के लिए?
std::set<int> s1, s2;
s1 = getAnExcitingSet();
std::transform(s1.begin(), s1.end(), std::back_inserter(s2), ExcitingUnaryFunctor());
बेशक
, std::back_inserter
काम नहीं करता। std::inserter
को भी एक पुनरावर्तक की आवश्यकता है? मैंने std::inserter
का उपयोग नहीं किया है, इसलिए मुझे यकीन नहीं है कि क्या करना है।
क्या किसी के पास कोई विचार है?
बेशक, मेरा दूसरा विकल्प
s2
के लिए वेक्टर का उपयोग करना है, और फिर इसे बाद में सॉर्ट करें। शायद यह बेहतर है?
std :: map के लिए भी काम करता है (आपने अपना समय बचाया, धन्यवाद)। – FreeNickname
'इंसर्टर (वीसी, vec.end()) के बाद से' वैक्टरों के लिए भी काम करता है, क्यों कोई भी पहली जगह बैक_इन्सेटर का उपयोग करता है? – NHDaly
@NHDaly: क्योंकि back_inserter तेज़ है – marton78