remove_copy_if
-
hi,
ich hab einen std::vectorstd::string vec1;
mit 10 elementen, davon will ich elemente 6-10 aus dem vec1 löschen und in den std::vectorstd::string vec2 kopieren...jedoch hab ich da problem mit remove_copy_if...die Funktion entfernt die Elemente aber anscheinend nicht aus vec1...
cu
-
remove_copy verändert die quelle nicht (das wäre nebenbei gesagt auch rel. schwer generisch mit diesen komplexitätsgarantien zu realisieren).
remove_copy_if ist im prinzip so etwas wie copy_if_not wenn es diese funktion gäbe.
-
komisch...der name ist dann nicht sehr aussage kräftig...wie würdest du das dann machen?
cu
-
kommt auf den kontext an. wenn du nur sequencen kopieren willst, ist ein copy, evtl. gekoppelt mit find oder binary_search, mit anschliessendem remove sicherlich angemessen. fallst du mit list arbeitest, bietet sich nat. splice an.
-
hi!
hab nur nen vector mit strings..cu
-
Hallo,
wenn ich deine Anforderungen richtig verstehe, scheinen mir range-insert und range-erase des vectors am Geeignetsten zu sein.vector<string> v1, v2; // füllen v2.insert(v2.end(), v1.begin() + 5, v1.begin() + 10); v1.erase(v1.begin() + 5, v1.begin() + 10);
-
hi, danke!
habs nun auch so gelöst...werds noch mal mit dem std::copy algo und erase probieren...thx so far.cu